1

我已经开始使用 Tonic 框架开发一个新的 RESTful API。我已经有在我的 apache 机器上测试过的功能代码,但我现在正试图将它移动到我的 Nginx 机器上。

我尝试将其转换为 nginx 规则:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_URI} !router\.php$
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule .* router.php [L,QSA]
</IfModule>

但我的规则似乎都不起作用。

到目前为止,我尝试将所有请求重定向到 /v2/router.php (我试图访问的 php 文件)

location /v2/ {
    try_files $uri $uri/ /v2/router.php;
}

这会导致奇怪的结果,例如我的所有 php 文件由于某种奇怪的原因而执行,等等......

感谢您对此的支持。

4

1 回答 1

1

你可以尝试类似的东西

location /v2 {
    root <absolute folder path>/v2;
    if (!-e $request_filename) {
        rewrite ^/(.*)$ /v2/router.php?/$1 last;
        break;
    }
}

希望能帮助到你。

于 2013-06-04T15:14:30.183 回答