如何将 Apache 重写规则转换为 nginx?

如何将 Apache 重写规则转换为 nginx?

我正在尝试将这些规则从 Apache rewrite 转换为 nginx:

RewriteRule ^([^/]+)/([^/]+)?$ api.php?version=$1&call=$2 [L]

我尝试在 nginx 配置中添加以下内容:

 rewrite ^([^/]+)/([^/]+)?$ api.php?version=$1&call=$2

但当我访问我的网站时,只收到 404 错误。

我希望我的 URL 看起来像这样:

 http://mysite/1.0/Something

我如何将这些规则转换为 nginx?

答案1

添加/到您的重写目的地并设置last标志。

rewrite ^([^/]+)/([^/]+)?$ /api.php?version=$1&call=$2 last;

答案2

这里有两个转换器,但也要仔细检查转换输出

http://winginx.com/htaccess

http://www.anilcetin.com/convert-apache-htaccess-to-nginx/

相关内容