最近有一个好朋友找我咨询zblog二级目录伪静态的问题,起因是这样的,他之前有zblog搭建了一个站点,然后,现在又想在站点根目录下再搭建一个问答站点,目录名称是这样qa,路径是/xxx/qa/,二级目录搭建完站后,发现URL无法伪静态,针对这个问题需要注意的是:
在Nginx服务器配置中,我们需要编写特定的location规则来处理Z-Blog二级目录下的动态链接转为符合SEO标准的静态路径格式。下面将为您展示如何在Nginx配置文件中添加针对Z-Blog二级目录的伪静态规则代码,以便正确解析和重写动态URL为静态形式。
# 子目录规则要排在前边; location /qa/ { 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 (.*) /qa/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; } }
需要特别注意的是,二级目录的伪静态规则,一定要放在主站伪静态规则的前面。
如果你想搭建多个二级目录站点,方法也是同理,继续往上追加即可。
wordpress二级目录伪静态跟zblog差不多的
# 子目录规则要排在前边; location /二级目录/ { 这里放入伪静态规则 } # 根目录规则 location / { 这里放入伪静态规则 }