首页 > 解决方案 > 转换为 nginx 规则

问题描述

美好的一天,任何人都可以帮我将这个.htaccess 转换为 nginx 吗?

.httacess

RewriteEngine On

# Unless directory, remove trailing slash
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/$ ./$1 [R=301,L]

# Redirect external .php requests to extensionless url
RewriteCond %{THE_REQUEST} ^(.+)\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(.+)\.php$ ./$1 [R=301,L]

# Resolve .php file for extensionless php urls
RewriteRule ^([^/.]+)$ $1.php [L]

我尝试了很多东西,但我就是找不到正确的公式来让它发挥作用。这是我现在的配置:

location /dev/links {
  if (!-e $request_filename){
    rewrite ^/([^/]+)/$ /$1 redirect;
  }
  rewrite ^/(.+)\.php$ /$1 redirect;
  rewrite ^/([^/.]+)$ /$1.php last;
}

如果不是子目录 /dev/links,这不是根目录

标签: .htaccessnginxurl-rewriting

解决方案


推荐阅读