2009-12-08 98 views
0

我在最後一週的.htaccess中搜索301重定向規則。我也在這裏參觀過很多類似的網頁。但一切都不適合我。所以我在尋求像你這樣的高手的幫助。301對wordpress的重定向幫助

我使用WordPress的博客平臺。在我使用Joomla之前,那時候我的網站上有很多404錯誤。有超過10,000個404錯誤。主要有兩類404錯誤。例子是example.com//component/option,com_xmap/Itemid,44/component/xxx/yyy/menu1/menu2/something/和example.com/index.php/component/option,com_xmap/Itemid,44/component/ XXX/YYY /目錄/菜單1/MENU2/something.html。像這些太多的網址。我認爲這是由於Joomla中的一些緩存問題而發生的,這些網址是在模塊的主頁上逐一創建的。在禁用了該模塊的緩存後,問題就解決了,但谷歌已經將所有這些不良網址編入索引。

我認爲最好對這兩類404錯誤網址進行301重定向到主頁或www.freezonal.com/sitemap.xml,因爲這些網址只被google編入索引並且不會在搜索結果中看到。

目前我使用這個對我的.htaccess

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
# END WordPress 

RewriteCond %{QUERY_STRING} .* 
RewriteRule ^index.php/(.*)$ /? [R=301,L] 

是否有這兩個類別的404個網址重定向到主網站的任何301重定向代碼,並沒有任何其他建議,爲更好的搜索引擎優化。如果你解決這個問題,我會非常感謝你。

回答

1

首先,WordPress的重寫規則必須是在底部,因爲他們啜了任何404。之後的任何事情都不會正常工作。因此,在之上添加新規則WordPress的規則。

RewriteEngine On 
RewriteBase/
RewriteRule (index.php/|/)?component/option http://example.com/ [L,R=301] 

類似的東西應該工作。我不知道您是否希望保留您的任何/component/網址,因此您可能需要從RewriteRule中刪除問號。

0

爲了重寫工作,確保你換你重寫條件的mod_rewrite.c標籤。然後打開RewriteEngine並設置你的RewriteBase。我不認爲重定向在mod_rewrite標籤之外工作。

如果你只是想只重定向這兩條路徑主頁,試試這個:

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^component*/[R=301,L] 
RewriteRule ^index.php/component*/[R=301,L] 
</IfModule> 

嘗試了這一點,看看它是否工作。

此外,請務必在此查看apache.org上的文檔http://httpd.apache.org/docs/current/mod/mod_rewrite.html