Nginx版UPUPW添加伪静态rewrite规则方法
编辑: upupw 发布时间: 2013-05-16 22:19:03 来源: UPUPW绿色服务器平台 热度: 23494
最近大家都比较关注UPUPW添加Nginx伪静态这一话题,下边我们以phpwind在Nginx中添加伪静态rewrite规则为例,讲解在Nginx中添加伪静态的方法。
首先我们需要进入phpwind后台-全局-URL伪静态设置-勾选你需要开启伪静态的页面,我们这里默认url格式全部勾选,如下图:
如果这里修改了URL格式,那么在以下配置中也要修改Nginx伪静态的对应项
接下来打开UPUPW默认主机htdocs根目录下的up-rewrite.conf文件,或者虚拟主机根目录下的up-rewrite.conf文件
备注up-rewrite.conf文件是Nginx版N3.0开始才有的,之前的版本建议升级到N3.0或以上版本来添加伪静态。
这里我们推荐用轻量级的notepad++软件编辑vhosts.conf,切记不要用记事本编辑否则会无法启动nginx服务。
下面是phpwind官网的Nginx伪静态规则:
location / { if (-f $request_filename) { break; } if ($request_filename ~* "\.(js|ico|gif|jpe?g|bmp|png|css)$") { break; } if (!-e $request_filename) { rewrite . /index.php last; } }
我们选取location / {......}中间的部分加入up-rewrite.conf中即可,不能包含location / {......}否则Nginx服务将不能启动,up-rewrite.conf中具体phpwind伪静态规则如下:
if (-f $request_filename) { break; } if ($request_filename ~* "\.(js|ico|gif|jpe?g|bmp|png|css)$") { break; } if (!-e $request_filename) { rewrite . /index.php last; }
很人性化的一点是UPUPW在up-rewrite.conf中默认已经加入了phpwind伪静态规则大家只要按要求去除代码前边的#号即可。
保存配置文件s5关闭全部服务,s1开启全部服务后即可访问phpwind的伪静态页面了,以下为测试结果:
同理,在Nginx版UPUPW中添加Discuz, dedecms,wordpress的伪静态也就轻而易举了,大家可以自己慢慢尝试!
最后注意的是必须保证nginx伪静态的正确性,如果不正确nginx服务将无法开启,届时需要删除伪静态后再开启nginx服务,直到配置正确!