nginx将file.php重写为page.php?page = file

时间:2011-10-19 08:55:18

标签: nginx rewrite

我是nginx的新手,想要设置重写,但总是失败了。我想要的是将file.php重写为page.php?page=file,但我只想在file.php不存在时才会出现这种情况。任何人都可以帮我这个吗?

我自己尝试了一些改写,但没有任何作用......

2 个答案:

答案 0 :(得分:0)

我现在没有设置PHP,但这应该可行。

location /rewrite-test/
{
    root /var/www/my-website/;

    try_files $uri /rewrite-test/page.php?page=$uri;
}

您可以启用日志记录以查看其失败的位置,以防它无效。

server
{
    listen 80;

    error_log /var/www/my-website/logs/error.log;

    location /
    {
        ....
    }
}

然后使用此命令:

tail -f /var/www/my-website/logs/error.log

答案 1 :(得分:0)

我得到了它的工作:

location ~ (.*/)([\w\-\.]+)\.php {
    try_files $uri $1page.php?page=$2$args;
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
}