zoukankan      html  css  js  c++  java
  • Nginx环境下常见的开源项目重写汇总

    我们做PHP开发的,作者寒冰我觉得大部分时候都在跟开源的系统打交道。比如:Discuz、PHPCMS、ecshop、wordpress等开源系统。一般我们都是在本地搭建测试环境,用的web服务器都是apache。这时候假如服务器换成了nginx。我们得重新写重写文件,好麻烦。

    鉴于此需求点,今天寒冰我特意整理了这些开源的重写文件。希望能帮到大家。

    1、PHPCMS v9重写。

    rewrite ^/show-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3;
    rewrite ^/content-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3;
    rewrite ^/list-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=lists&catid=$1&page=$2;
    rewrite ^/tag-([^.]*)-([0-9]+)-([0-9]+).html /index.php?m=content&c=tag&catid=$2&tag=$1&page=$3;
    rewrite ^/comment-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=comment&c=index&a=init&commentid=content_$1-$2-$3;
    

    2、discuz 7.2重写:

    rewrite ^(.*)/archiver/((fid|tid)-[w-]+.html)$ $1/archiver/index.php?$2 last;
    rewrite ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3 last;
    rewrite ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3 last;
    rewrite ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3 last;
    rewrite ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3 last;
    rewrite ^(.*)/tag-(.+).html$ $1/tag.php?name=$2 last;
    

    3、discuz x2系列重写:

    rewrite ^(.*)/topic-(.+).html$ $1/portal.php?mod=topic&topic=$2 last;
    rewrite ^(.*)/article-([0-9]+).html$ $1/portal.php?mod=article&articleid=$2 last;
    rewrite ^(.*)/forum-(w+)-([0-9]+).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
    rewrite ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
    rewrite ^(.*)/group-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
    rewrite ^(.*)/space-(username|uid)-(.+).html$ $1/home.php?mod=space&$2=$3 last;
    rewrite ^(.*)/([a-z]+)-(.+).html$ $1/$2.php?rewrite=$3 last;
    

    4、ecshop重写:

    rewrite ^/index.html /index.php last;
    rewrite ^/category$ /index.php last;
    rewrite ^/feed-c([0-9]+).xml$ /feed.php?cat=$1 last;
    rewrite ^/feed-b([0-9]+).xml$ /feed.php?brand=$1 last;
    rewrite ^/feed.xml$ /feed.php last;
    rewrite ^/category-([0-9]+)-b([0-9]+)-min([0-9]+)-max([0-9]+)-attr([^-]*)-([0-9]+)-(.+)-([a-zA-Z]+)(.*).html$ /category.php?id=$1&brand=$2&price_min=$3&price_max=$4&filter_attr=$5&page=$6&sort=$7&order=$8 last;
    rewrite ^/category-([0-9]+)-b([0-9]+)-min([0-9]+)-max([0-9]+)-attr([^-]*)(.*).html$ /category.php?id=$1&brand=$2&price_min=$3&price_max=$4&filter_attr=$5 last;
    rewrite ^/category-([0-9]+)-b([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*).html$ /category.php?id=$1&brand=$2&page=$3&sort=$4&order=$5 last;
    rewrite ^/category-([0-9]+)-b([0-9]+)-([0-9]+)(.*).html$ /category.php?id=$1&brand=$2&page=$3 last;
    rewrite ^/category-([0-9]+)-b([0-9]+)(.*).html$ /category.php?id=$1&brand=$2 last;
    rewrite ^/category-([0-9]+)(.*).html$ /category.php?id=$1 last;
    rewrite ^/goods-([0-9]+)(.*).html /goods.php?id=$1 last;
    rewrite ^/article_cat-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*).html$ /article_cat.php?id=$1&page=$2&sort=$3&order=$4 last;
    rewrite ^/article_cat-([0-9]+)-([0-9]+)(.*).html$ /article_cat.php?id=$1&page=$2 last;
    rewrite ^/article_cat-([0-9]+)(.*).html$ /article_cat.php?id=$1 last;
    rewrite ^/article-([0-9]+)(.*).html$ /article.php?id=$1 last;
    rewrite ^/brand-([0-9]+)-c([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+).html /brand.php?id=$1&cat=$2&page=$3&sort=$4&order=$5 last;
    rewrite ^/brand-([0-9]+)-c([0-9]+)-([0-9]+)(.*).html /brand.php?id=$1&cat=$2&page=$3 last;
    rewrite ^/brand-([0-9]+)-c([0-9]+)(.*).html /brand.php?id=$1&cat=$2 last;
    rewrite ^/brand-([0-9]+)(.*).html /brand.php?id=$1 last;
    rewrite ^/tag-(.*).html /search.php?keywords=$1 last;
    rewrite ^/snatch-([0-9]+).html$ /snatch.php?id=$1 last;
    rewrite ^/group_buy-([0-9]+).html$ /group_buy.php?act=view&id=$1 last;
    rewrite ^/auction-([0-9]+).html$ /auction.php?act=view&id=$1 last;
    rewrite ^/exchange-id([0-9]+)(.*).html$ /exchange.php?id=$1&act=view last;
    rewrite ^/exchange-([0-9]+)-min([0-9]+)-max([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*).html$ /exchange.php?cat_id=$1&integral_min=$2&integral_max=$3&page=$4&sort=$5&order=$6 last;
    rewrite ^/exchange-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*).html$ /exchange.php?cat_id=$1&page=$2&sort=$3&order=$4 last;
    rewrite ^/exchange-([0-9]+)-([0-9]+)(.*).html$ /exchange.php?cat_id=$1&page=$2 last;
    rewrite ^/exchange-([0-9]+)(.*).html$ /exchange.php?cat_id=$1 last;
    

    5、phpwind重写:

    rewrite ^(.*)-htm-(.*)$ $1.php?$2 last;
    rewrite ^(.*)/simple/([a-z0-9\_]+.html)$ $1/simple/index.php?$2 last;
    rewrite ^(.*)/data/(.*).(htm|php)$ 404.html last;
    rewrite ^(.*)/attachment/(.*).(htm|php)$ 404.html last;
    rewrite ^(.*)/html/(.*).(htm|php)$ 404.html last;
    

    6、shopex重写:

    rewrite ^/(.+.(html|xml|json|htm|php|jsp|asp|shtml))$ /index.php?$1 last;
    

    7、wordpress重写:

    location / {
            if (-f $request_filename/index.html){
                rewrite (.*) $1/index.html break;
            }
            if (-f $request_filename/index.php){
                rewrite (.*) $1/index.php;
            }
            if (!-f $request_filename){
                rewrite (.*) /index.php;
            }
    }
    

    8、typecho 重写:

    location / {
        if (-f $request_filename/index.html){
            rewrite (.*) $1/index.html break;
        }
        if (-f $request_filename/index.php){
            rewrite (.*) $1/index.php;
        }
        if (!-f $request_filename){
            rewrite (.*) /index.php;
        }
    }
    

    原文:http://www.phpcxz.com/archives/nginx_vhosts_rewrite.html

  • 相关阅读:
    MYSQL性能优化的最佳20+条经验
    MySQL性能分析工具之PROFILE
    理解事务的4种隔离级别
    二进制中1的个数
    滑动窗口最大值
    字符流中第一个不重复字符
    字符串转化为整数
    java字符,字符串,数字之间的转换
    java中数组输出的方式
    java基础知识(1)
  • 原文地址:https://www.cnblogs.com/zsmynl/p/3573254.html
Copyright © 2011-2022 走看看