Dot-Htaccess
如何將舊的 html url 重定向到新的 php url
如何將舊的 html 頁面重定向到新的 php 頁面。我使用了這段程式碼,但它使用完整的文件路徑重定向。我正在使用下面的程式碼。
RewriteEngine On RewriteRule ^(.*).html$ $1.php
但它使用完整的文件路徑重定向
如果您指定相對替換,它將使用“完整文件路徑” 。IE。不以斜杠 ( ) 或 scheme+host(絕對 URL)開頭的替換。
/
在您的範例中,使用.htaccess
擷取的反向引用會排除 URL 路徑上的斜杠前綴。因此,您需要在替換上顯式包含斜杠前綴。例如:RewriteRule ^(.*).html$ /$1.php
但是,如果您需要外部重定向(正如您在問題中所描述的那樣),那麼您還需要在 上明確包含
R
(redirect
) 標誌RewriteRule
,否則您將獲得內部重寫(URL 不會改變 - 但您的網站可能仍可使用舊.html
URL)。如果您的文件中有其他指令,您可能還需要
L
(last
) 標誌來防止進一步重寫。例如:RewriteRule ^(.*).html$ /$1.php [R=302,L]
如果這應該是重定向(而不是重寫)並且這是對您的 URL 結構的永久更改,那麼只有在您確定它工作正常時才將
302
(臨時)更改為(永久)。301
(301
s 被瀏覽器硬記憶體,因此會使測試出現問題。)