服务器迁百度云出现微信浏览和部分手机浏览器出现内页404的情况,之前一直怀疑是开启HTTPS的原因导致,经过查资料和测试,发现是伪静态的原因。
百度云虚拟主机BCH服务器web内核用Nginx版本,百度云BCH虚拟主机会在webroot目录下生成app.conf和bcloud_nginx_gen.conf两个基础配置文件(bch是不允许修改这两个基础配置文件,只能通过加载自定义配置文件),ZBLOG设定伪静态就需要自己建一个bcloud_nginx_user.conf的伪静态规则文件。
在后台静态管理中心把URL配置好提交,然后把ReWrite规则复制到bcloud_nginx_user.conf里。Nginx的规则如下
location / { if (-f $request_filename/index.html){ rewrite (.*) $1/index.html break; } if (-f $request_filename/index.php){ rewrite (.*) $1/index.php; } if (!-f $request_filename){ rewrite (.*) /index.php; } }
然后在百度云虚拟主机控制面板重新加载服务。步骤:常用操作→站点启停→重载站点服务。服务加载完成后,伪静态规则就生效了,访问伪静态后的网页就正常了。
下面来自帮助文档的介绍
系统启动后将自动加载bcloud_nginx_gen.conf和bcloud_nginx_user.conf配置文件。
bcloud_nginx_gen.conf文件是由app.conf文件转换的。
bcloud_nginx_user.conf为用户自定义配置文件。用户可在程序根目录下,创建bcloud_nginx_user.conf文件,在文件里写入自定义配置。BCH支持server级别以下的自定义配置。
当出现重复配置时,bcloud_nginx_user.conf优先级高于bcloud_nginx_gen.conf。
注意基础配置文件不能修改,用户如有特殊需要,可添加bcloud_nginx_user.conf文件添加自定义配置。