admin 发表于 2013-5-24 22:40:47

PHPOK的nginx伪静态规则

本站原创。规则如下:rewrite ^([^\.]*)index\.html$        $1/index.php last;
rewrite ^([^\.]*)index-()\.html$        $1/index.php?langid=$2 last;
rewrite ^([^\.]*)cid-(+)\.html$        $1/index.php?c=list&cid=$2 last;
rewrite ^([^\.]*)cid-(+)-(+)\.html$        $1/index.php?c=list&cid=$2&pageid=$3 last;
rewrite ^([^\.]*)cs-(+)\.html$        $1/index.php?c=list&cs=$2 last;
rewrite ^([^\.]*)cs-(+)-(+)\.html$        $1/index.php?c=list&cs=$2&pageid=$3 last;
rewrite ^([^\.]*)mid-(+)\.html$        $1/index.php?c=list&mid=$2 last;
rewrite ^([^\.]*)mid-(+)-(+)\.html$        $1/index.php?c=list&mid=$2&pageid=$3 last;
rewrite ^([^\.]*)ms-(+)\.html$        $1/index.php?c=list&ms=$2 last;
rewrite ^([^\.]*)ms-(+)-(+)\.html$        $1/index.php?c=list&ms=$2&pageid=$3 last;
rewrite ^([^\.]*)c(+)\.html$        $1/index.php?c=msg&id=$2 last;
rewrite ^([^\.]*)c(+)-(+)\.html$        $1/index.php?c=msg&id=$2&pageid=$3 last;
rewrite ^([^\.]*)(+)-(+)\.html$        $1/index.php?c=msg&ts=$2&pageid=$3 last;
rewrite ^([^\.]*)(+)\.html$        $1/index.php?c=msg&ts=$2 last;

admin 发表于 2013-5-24 22:42:25

再附上原apache下的伪静态规则,可以对比发现是咋修改的RewriteEngineon
RewriteBase /

RewriteRule ^index\.html$                                        index.php
RewriteRule ^index-()\.html$                                index.php?langid=$1
RewriteRule ^cid-(+)\.html$                                index.php?c=list&cid=$1
RewriteRule ^cid-(+)-(+)\.html$                        index.php?c=list&cid=$1&pageid=$2
RewriteRule ^cs-(+)\.html$                                index.php?c=list&cs=$1
RewriteRule ^cs-(+)-(+)\.html$                index.php?c=list&cs=$1&pageid=$2
RewriteRule ^mid-(+)\.html$                                index.php?c=list&mid=$1
RewriteRule ^mid-(+)-(+)\.html$                        index.php?c=list&mid=$1&pageid=$2
RewriteRule ^ms-(+)\.html$                                index.php?c=list&ms=$1
RewriteRule ^ms-(+)-(+)\.html$                index.php?c=list&ms=$1&pageid=$2
RewriteRule ^c(+)\.html$                                        index.php?c=msg&id=$1
RewriteRule ^c(+)-(+)\.html$                                        index.php?c=msg&id=$1&pageid=$2
RewriteRule ^(+)-(+)\.html$                                index.php?c=msg&ts=$1&pageid=$2
RewriteRule ^(+)\.html$                                index.php?c=msg&ts=$1

admin 发表于 2014-5-14 15:30:19

修复最后一条,即单页的伪静态在amh上可用
rewrite ^([^\.]*)index\.html$      $1/index.php last;
rewrite ^([^\.]*)index-()\.html$      $1/index.php?langid=$2 last;
rewrite ^([^\.]*)cid-(+)\.html$      $1/index.php?c=list&cid=$2 last;
rewrite ^([^\.]*)cid-(+)-(+)\.html$      $1/index.php?c=list&cid=$2&pageid=$3 last;
rewrite ^([^\.]*)cs-(+)\.html$      $1/index.php?c=list&cs=$2 last;
rewrite ^([^\.]*)cs-(+)-(+)\.html$      $1/index.php?c=list&cs=$2&pageid=$3 last;
rewrite ^([^\.]*)mid-(+)\.html$      $1/index.php?c=list&mid=$2 last;
rewrite ^([^\.]*)mid-(+)-(+)\.html$      $1/index.php?c=list&mid=$2&pageid=$3 last;
rewrite ^([^\.]*)ms-(+)\.html$      $1/index.php?c=list&ms=$2 last;
rewrite ^([^\.]*)ms-(+)-(+)\.html$      $1/index.php?c=list&ms=$2&pageid=$3 last;
rewrite ^([^\.]*)c(+)\.html$      $1/index.php?c=msg&id=$2 last;
rewrite ^([^\.]*)c(+)-(+)\.html$      $1/index.php?c=msg&id=$2&pageid=$3 last;
rewrite ^([^\.]*)(+)-(+)\.html$      $1/index.php?c=msg&ts=$2&pageid=$3 last;
rewrite ^/(.*)/(+).html$       $1/index.php?c=msg&ts=$2 last;

admin 发表于 2014-5-14 15:31:35

apache转nginx的伪静态在线工具(仅供参考)
http://www.anilcetin.com/convert-apache-htaccess-to-nginx/
页: [1]
查看完整版本: PHPOK的nginx伪静态规则