nginx配置伪静态

2018年10月30日18:15:30 评论 439

phpcms在nginx环境下默认的url规则太长,如果想把php文件伪静态成html文件,或者以/*结尾,就需要配置伪静态规则。

伪静态是一种可以把文件后缀改成任何可能的一种方法,下面给出了phpcms在nginx环境中伪静态的配置方法。

location / {
  root /data/www;
  index  index.php index.html index.htm;

  rewrite ^/phpcms/article/([0-9]+).html /phpcms/index.php?m=content&c=index&a=show&catid=6&id=$1 last;
  
  rewrite ^/phpcms/caipu-([0-9]+)-([0-9]+)-([0-9]+).html /phpcms/index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last;
  
  rewrite ^/phpcms/content-([0-9]+)-([0-9]+)-([0-9]+) /phpcms/index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last;

  rewrite ^/phpcms/list-([0-9]+)-([0-9]+).html /phpcms/index.php?m=content&c=index&a=lists&catid=$1&page=$2 last;
  
  rewrite ^/phpcms/tag-([^\.]*)-([0-9]+)-([0-9]+).html /phpcms/index.php?m=content&c=tag&catid=$2&tag=$1&page=$3 last;

  rewrite ^/phpcms/comment-([0-9]+)-([0-9]+)-([0-9]+).html /phpcms/index.php?m=comment&c=index&a=init&commentid=content_$1-$2-$3 last;
  
  rewrite ^/phpcms/([^\.]*).html /phpcms/index.php?m=member&c=index&a=$1 last;

}

以上是以phpcms做为二级目录为前提的配置方法,如果是一级目录作为根目录,只需将/phpcms去掉即可。本文是以phpcms为例来说明nginx环境里是如何配置伪静态的,其他情况类似。

本文已通过「原本」原创作品认证,未经作者授权请勿直接转载,负责将依法追究其法律责任。
Nginx 最后更新:2019年11月27日
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: