新建网站难免会重新配置 nginx 的 rewrite,这里记录下常见的问题及配置。
备注两个可以从 Apache(.htaccess)转 Nginx 的网址:
https://www.winginx.com/en/htaccess
https://www.bt.cn/Tools
如果你配置好 rewrite 后仍然访问异常,请注意检查 nginx 的fastcgi_split_path_info
参数配置,如下
#写法一 非贪婪模式匹配
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
#写法二 贪婪模式匹配
fastcgi_split_path_info ^(.+\.php)(/.*)$;
- thinkphp
location / {
if (!-e $request_filename){
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
- laravel
location / {
try_files $uri $uri/ /index.php$is_args$query_string;
}
- wordpress
location / {
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
- zblog
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;
}
- typecho
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php$1 last;
}
- emlog
location / {
index index.php index.html;
if (!-e $request_filename){
rewrite ^/(.*)$ /index.php last;
}
}
- dedecms
rewrite "^/list-([0-9]+)\.html$" /plus/list.php?tid=$1 last;
rewrite "^/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$" /plus/list.php?tid=$1&totalresult=$2&PageNo=$3 last;
rewrite "^/view-([0-9]+)-1\.html$" /plus/view.php?arcID=$1 last;
rewrite "^/view-([0-9]+)-([0-9]+)\.html$" /plus/view.php?aid=$1&pageno=$2 last;
rewrite "^/plus/list-([0-9]+)\.html$" /plus/list.php?tid=$1 last;
rewrite "^/plus/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$" /plus/list.php?tid=$1&totalresult=$2&PageNo=$3 last;
rewrite "^/plus/view-([0-9]+)-1\.html$" /plus/view.php?arcID=$1 last;
rewrite "^/plus/view-([0-9]+)-([0-9]+)\.html$" /plus/view.php?aid=$1&pageno=$2 last;
rewrite "^/tags.html$" /tags.php last;
rewrite "^/tag-([0-9]+)-([0-9]+)\.html$" /tags.php?/$1/$2/ last;
您好,我来自V2ex,希望能跟您交换友情链接。
我的博客也基本上是技术类文章,全部都是原创内容。
希望得到回复,我的博客地址是:https://www.fi-ads.com/
已经添加您的链接到我的友情链接页面。
非常感谢!
已添加