Nginx常用Rewrite(僞靜態規則)

Nginx常用Rewrite(僞靜態規則)

| No Comments | No TrackBacks

相信現在大部分用Linux VPS的朋友都在使用這個迅速傳播的Nginx,今天就整理一下最常見的PHP程序的Rewrite(僞靜態規則)。

Wordpress:

location / {
index index.html index.php;
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;
}
}

PHPCMS:

location / {
###以下爲PHPCMS 僞靜態化rewrite規則
rewrite ^(.*)show-([0-9]+)-([0-9]+)/.html$ $1/show.php?itemid=$2&page=$3;
rewrite ^(.*)list-([0-9]+)-([0-9]+)/.html$ $1/list.php?catid=$2&page=$3;
rewrite ^(.*)show-([0-9]+)/.html$ $1/show.php?specialid=$2;

####以下爲PHPWind 僞靜態化rewrite規則
rewrite ^(.*)-htm-(.*)$ $1.php?$2 last;
rewrite ^(.*)/simple/([a-z0-9/_]+/.html)$ $1/simple/index.php?$2 last;
}

ECSHOP:

if (!-e $request_filename)
{
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;
}

SHOPEX:

location / {
if (!-e $request_filename) {
rewrite ^/(.+/.(html|xml|json|htm|php|jsp|asp|shtml))$ /index.php?$1 last;
}
}

發佈了15 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章