Z-blogPHP网站安装在子目录怎么配置伪静态规则
1、首先确定你的网站已经开了伪静态,如下图所示:
2、你的网站所在web服务器环境必须是由Nginx搭建的,如何简单证实web服务器环境是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;
}
}
把以上“子目录名称”汉字修改为你网站所在子目录的名称。
例如,我把网站安装在子目录nav,那么我完整的伪静态配置代码就应该写成:
location /nav/{
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 (.*) /nav/index.php;
}
}
那么,最后改好的代码应该放在那里呢?
以使用宝塔控制面板为例:
进入网站列表——网站名称——伪静态——填写你改好的伪静态规则并点击保存即可。
如下图所示:
在这里需要注意的是,如果我们的根目录也安装了Z-blogPHP网站,并且也开启了伪静态,怎么才能让根目录的网站伪静态规则和子目录的网站伪静态规则共存呢?
按照以下写法即可:
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;
}
}
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;
}
}
注意,一定要把“子目录名称”汉字换成你的网站实际所在子目录名称,有用户都不知道改一下,直接粘贴就用了,我也没有办法呀!
本文链接:https://h.finchui.com/zblogcn/4541.html 转载需授权!