将php文件重定向到主页nginx

时间:2015-07-17 09:33:48

标签: php redirect nginx

我正在尝试使用nginx将old.php(包括所有参数)重定向到主页。它应该是301 redirect

我尝试了以下重写(在服务器块中),但它无法正常工作

rewrite ^old.php(.*)$ https://www.example.com permanent;

我还有一个php位置块

location ~* \.php$ { 
        root /var/www/example.com/public_html/www;
        try_files $uri =404;
        fastcgi_pass   unix:/run/php5-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include        fastcgi_params;
}

2 个答案:

答案 0 :(得分:1)

您的rewrite指令无效,因为URI以/开头。尝试替换:

rewrite ^old.php(.*)$ https://www.example.com permanent;

使用:

rewrite ^/old.php(.*)$ https://www.example.com permanent;

答案 1 :(得分:0)

一个解决方案,不止一个,是用....替换原始的old.php文件。

<?php
header("HTTP/1.1 301 Moved Permanently"); 
if( $_SERVER['QUERY_STRING'] == "" ) { $qs=""; } else { $qs = "?" . $_SERVER['QUERY_STRING']; }
header("Location: https://www.example.com" . $qs)
?>