我正在尝试从 Apache 迁移到 Nginx。我使用的是 Nginx 1.8.1 和 PHP 5.6
Apache 接受如下 URL:
domain.com/site/index.php/something
并使用参数 /something 调用 index.php 脚本。这就是我的 Wordpress 的工作方式,但还有其他脚本依赖于此。
例如我可以这样做:
domain.com/path/script.php/someparameter
我怎样才能让它在 Nginx 中工作?
编辑:我找到了 Wordpress 的解决方案:
location /blog/ {
try_files $uri $uri/ /blog/index.php?$args;
}
但是适合所有脚本的通用解决方案是什么?
答案1
您可以使用重写。
例如,使用尾随的重写所有 PHP 脚本/
:
location / {
rewrite ^/(.+\.php)(/.+) /$1?$2;
try_files $uri $uri/ =404;
}