2013-08-05 65 views
0

如果我在我的網站上有2000個鏈接,我應該爲他們每個人編寫mod重寫規則 我只需要1個規則 如果我使用內部重寫規則來更改我的網頁名稱而不是重定向,我會有內容重複?例如,如果我將/oldpage.html重寫爲/working-person.html,則會將其重定向到working-person.html。這實際上起作用。但仍是oldpage.html「直接」連接,並沒有顯示出301如何重定向?

服務器拋出一個500錯誤如果我添加[R]或[R = 301]底:

RewriteRule ^oldpage.html$ working-person.html [R=301]. 

在另一方面...

Redirect 301 /oldpage.html http://www.example.com/working-person.html 

...作品。我應該只使用重定向嗎?

我以爲我讀了某處使用rewriterule而不是重定向時使用其他指令。如果您獲得重複的內容,爲什麼要使用內部重寫?

感謝您的任何想法/意見。

回答

0

你想使用301(移動永久),所以搜索引擎(如谷歌)可以重新索引您的網站。一旦發生這種情況,你不再需要重定向。

你不應該有重複的內容。

1

這行你有一個語法錯誤:

RewriteRule ^oldpage.html$ working-person.html [R=301]. 

到底有一個點造成500內部錯誤。

修改成:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteRule ^oldpage\.html$ /working-person.html [R=301,L,NC] 

如果你有2000餘鏈接然後提供的新老聯繫了一些樣本,這樣我可以建議是否可以通過一些mod_rewrite的規則或處理不。

確保mod_rewrite和.htaccess通過httpd.conf啓用,然後將上面的代碼放入您的.htaccess目錄下的DOCUMENT_ROOT目錄中。