1
我目前正在翻新我的網站,其中有1000頁;這需要對網址進行更改。使用htaccess將所有404錯誤重定向到不包含特定404網址的主頁?
- 我想301永久重定向所有404錯誤到網站主頁說www.domain.com,除了一些特定的404網址。
- 我想301將這些指定排除的404個URL(在1中)永久重定向到另一個URL。
我嘗試下面的代碼:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/about-us0.html [NC]
RewriteCond %{REQUEST_URI} !^/contact_us0.html [NC]
RewriteRule ^(.*)$ /$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^domain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.com$
RewriteRule ^about-us0\.html$ "http\:\/\/www\.domain\.com\/about\.html" [R=301,L]
RewriteCond %{HTTP_HOST} ^domain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.com$
RewriteRule ^contact-us0\.html$ "http\:\/\/www\.domain\.com\/contact\.html" [R=301,L]
但是,當我瀏覽到www.domain.com/about-us0.html或www.domain.com/contact_us0.html;谷歌鉻說,「這個網頁有一個重定向循環」。
有什麼我做錯了嗎?任何幫助將不勝感激。
對於沒有carring查詢字符串重定向:
http://domain.com/prod/species.php?action=3&file_id=30
到
http://domain.com/species-30.php
和
http://domain.com/prod/species.php?action=3&file_id=101
到
http://domain.com/species-101.php
我做了這樣的事情(下面),它工作正常。這有什麼變化嗎?
RewriteCond %{QUERY_STRING} ^action=3&file_id=([0-9]+)$ [NC]
RewriteRule ^prod/species\.php$ /species-%1.php? [R=301,L]
感謝您的幫助!它現在就像一個魅力! – apeee
不客氣,很高興它爲你工作。 – anubhava
是否有可能通過htaccess將每個以下URL重定向到特定頁面...... http://domain.com/prod/species.php http://domain.com/prod/species.php?action=3&file_id= 101 http://domain.com/prod/species.php?action = 3&file_id = 30' – apeee