簡體   English   中英

htaccess中的301未重定向

[英]301 in htaccess is not redirecting

我在WordPress網站(http://www.raynauds.org)的根目錄中有htacess文件。 我需要將所有呼叫重定向到:

http://www.raynauds.org/?p=2366

至:

http://www.raynauds.org/2012/08/11/dr-maureen-mayes-joins-raynauds-association-medical-advisory-board/

我在Linxus服務器上運行Apache。 下面的代碼似乎沒有執行任何操作來重定向請求。 我究竟做錯了什么?

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Redirect 301 /?p=2366 http://www.raynauds.org/2012/08/11/dr-maureen-mayes-joins-raynauds-association-medical-advisory-board/

在查找要執行的文件之前,重寫和重定向都應用於URL。

您的RewriteRules都帶有[L]標志,表明這將是修改URL的最后一個規則,因此,該Redirect將不會用於與RewriteRules之一匹配的URL。

由於第二個RewriteRule將捕獲所有請求,因此您的重定向將不起作用。 您也可以使用RewriteRule進行重定向,例如

RewriteCond %{QUERY_STRING}  p=2366
RewriteRule . http://www.example.com [R=301,L]

另請參閱手冊中的可用標志

當然,此規則應在Wordpress本身的RewriteCond / RewriteRule行起作用之前執行。

將您的Redirect 301規則移到RewriteBase語句下面的RewriteBase

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM