phpcms在nginx的rewrite伪静态标准写法

来源:爱站网时间:2020-10-15编辑:网友分享
在网上,有很多phpcms在nginx的rewrite伪静态写法,几乎都是乱写没有标准的,而有些则是从apache的规则来修改,今天小编研究出来了正确写法,分享跟小伙伴们。

在网上,有很多phpcms在nginx的rewrite伪静态写法,几乎都是乱写没有标准的,而有些则是从apache的规则来修改,今天小编研究出来了正确写法,分享跟小伙伴们。

我用的lnmp一键安装包,conf文件是放在默认路径。在进行测试时,我先使用了

代码如下:

location / {
rewrite ^/caipu-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last;
rewrite ^/content-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last;
rewrite ^/list-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=lists&catid=$1&page=$2 last;
rewrite ^/tag-([^\.]*)-([0-9]+)-([0-9]+).html /index.php?m=content&c=tag&catid=$2&tag=$1&page=$3 last;
rewrite ^/comment-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=comment&c=index&a=init&commentid=content_$1-$2-$3 last;
rewrite ^/([^\.]*).html /index.php?m=member&c=index&a=$1 last;
}
然后就出现悲剧了。打开网站首页时提示“Action does not exist.”意思是行为不存在?我翻遍了百度,在phpcms官方论坛有人说这个错误是地址问题,再联想到我是修改伪静态出现的······我懂了,是首页伪静态问题!
在我对照了wordpress官方的写法后,终于写成了。
代码如下:
location / {
if (!-f $request_filename){
rewrite (.*) /index.php;
}
rewrite ^/caipu-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last;
rewrite ^/content-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last;
rewrite ^/list-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=lists&catid=$1&page=$2 last;
rewrite ^/tag-([^\.]*)-([0-9]+)-([0-9]+).html /index.php?m=content&c=tag&catid=$2&tag=$1&page=$3 last;
rewrite ^/comment-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=comment&c=index&a=init&commentid=content_$1-$2-$3 last;
rewrite ^/([^\.]*).html /index.php?m=member&c=index&a=$1 last;
}
看完上述内容后,希望小编给大家带来的内容能帮助到有需要的朋友吧!在爱站技术频道上有很多你可能感兴趣的问题,不妨点击关注下吧。

 

 

上一篇:phpcms V9有哪些常用文件

下一篇:phpcms2008各种信息变量的情况说明

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载