2016-12-30 121 views
0

我想重定向每個頁面(也是從子目錄)重定向到.php文件。將.html文件重定向到.php

像abc.html到abc.php如果abc.php不存在,它應該顯示404

這是我的htaccess代碼。

RewriteEngine on 
RewriteCond %{THE_REQUEST} \ /(.+)\.html 
RewriteRule^/%1.php [L,R=301] 
RewriteRule ^(.*).php$ $1.html [QSA] 

它只將一些頁面重定向到PHP,它也重定向到一些PHP文件,這是不存在的文件夾裏面。

如何解決?

回答

1
RewriteEngine On 
RewriteRule ^(.*)\.html$ $1.php [L] 
+0

它也是這樣,在地址欄中顯示一個帶有.php擴展名的url,並打開html文件的內容,但實際上並不顯示.php文件內容。 –

+0

如果您希望將其作爲重定向來完成,而不僅僅是重寫,請將[L]修改爲[L,R] – 2016-12-30 07:26:12

6

您可以嘗試兩種方法中的任意一種。

方法1:使用的.htaccess

RewriteEngine On 

RewriteRule ^(.*)\.html$ $1.php [L,R] 

方法2:將以下內容添加HTML文件

<META HTTP-EQUIV="Refresh" 
CONTENT="0; URL="http://www.yoursite.com/redirect_location"> 

這裏有通過增加內容可變延遲重定向的選項。例如,CONTENT = 5會將重定向延遲5秒。