wdcp wordpress的nginx伪静态规则失效的问题

VPS上,用上了最新的WDCP2.5管理面板,支持多用户管理(我们几个合租的VPS,最需要这个功能了),感觉很不错,屁颠屁颠的把网站搬过来了,然后设计wordpress伪静态规则。我还是使用的是WDCP1.0时代的wordpress伪静态规则

try_files $uri $uri/ /index.php?q=$request_uri;

结果重启nginx,还是显示404。这就让我纠结了。后来我有测试一个网上最普遍的

try_files $uri $uri/ /index.php?q=$uri&$args;

 

结果还是失效,急的我像是热过上的蚂蚁啊,又在网上陆续找了一些伪静态规则,没一个成功了。重启服务器重启了N次。

黄天不负有心人,最后终于让我找到了一条可以用的:

 

1
2
3
4
5
6
7
8
9
10
11
rewrite ^.*/files/(.*)$ /wp-includes/ms-files.php?file=$1 last;
if (!-e $request_filename) {
rewrite ^.+?(/wp-.*) $1 last;
rewrite ^.+?(/.*\.php)$ $1 last;
rewrite ^ /index.php last;
}

 

 

根据这条规则发明人的解释,第一条规则

try_files $uri $uri/ /index.php?q=$request_uri;

会让所有的找不到的目录和文件跳转到index.php处理,很有可能是我的index.php权限问题或者其他原因导致不能将伪静态地址映射到真实地址中去。所以才会出现这个纠结的问题。

(特别注意:伪静态规则文件必须是.conf格式,并且文件里没有多余字符,结尾多一个空格都会出问题!)

本文固定链接: http://blog.wmphp.com/749.html | 顺盛网络博客

该日志由 admin 于2013年11月18日发表在 技术文章 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: wdcp wordpress的nginx伪静态规则失效的问题 | 顺盛网络博客

wdcp wordpress的nginx伪静态规则失效的问题:等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter