我的nginx重写正在下载php文件


12

我正在尝试以下重写规则:

            location / {
                    index index.php index.html;
                    rewrite  ^/test$  /test.php  break;
            }

我也有:

            location ~ \.php$ {
                    fastcgi_pass    127.0.0.1:9000;
                    include         fastcgi_params;
                    fastcgi_param SCRIPT_FILENAME /home/sites/default$fastcgi_script_name;
                    fastcgi_index   index.php;
            }

正常的php文件可以正常工作,但是似乎我的重定向只是下载要重定向到的php文件,而不是解析它。

我想念什么?我加载了文件,而不是通过在第一个位置块中放入fastcgi来下载文件,但仍然没有将其解析为php。

Answers:


24

更改breaklast

因为新的URL需要用不同的方式处理location,所以您需要对新的重写的URL进行nginx重新启动处理,只有lastrewrite规则中使用时才执行此操作。

请参阅文档以获取更完整的说明。


@TamasKalman嗯?您看起来不像OP。如果您有问题,可以提出一个新问题。
迈克尔·汉普顿
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.