2009-12-29 101 views
4

我們有一個客戶正在關門。我們希望將所有進入其域的流量重定向到帶有_img子目錄中幾張圖片的新頁面index.html。 (該頁面解釋發生了什麼,當前客戶可以期望什麼與他們當前的訂單等).htaccess將所有流量重定向到一個頁面(410 Gone)

我讀過關於可能使用HTTP 410作爲技術解釋到機器人等的最佳方式,該網站是不在那裏,不會回來,也不會提供轉發地址。在.htaccess文件中執行此操作的最佳方式是什麼,並將用戶引導至新的index.html?

+0

[.htaccess 301將所有頁面舊域重定向到新域上的單個頁面]的可能重複(http://stackoverflow.com/questions/15057146/htaccess-301-redirect-all-pages-on-old新域名上的單個頁面) – mattdm 2014-07-10 03:04:45

回答

10

您可以使用mod_rewrite

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule !^index\.html$ index.html [L,R=410] 

此規則將改寫請求不存在的文件的index.html並與響應一起發送410個狀態碼。但是,這需要Apache 2作爲R = 4XX僅可因爲Apache 2

+0

R = 4xx在瀏覽器中工作嗎?我嘗試了一次,無法使其工作,但它*可能*我使用的是Apache 1.3。 – ceejayoz 2009-12-29 18:11:39

+0

@ceejayoz:一切都是在服務器端完成的。客戶只是得到迴應。 – Gumbo 2009-12-29 18:26:05

+0

如果和我一樣,R = 410給出Apache錯誤,嘗試使用<?php頭(「HTTP/1.0 410 Gone」)重定向到PHP腳本; ?> – Liam 2011-11-14 13:29:15

4

您可以簡單地使用.htaccess文件是這樣的:

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteCond %{REQUEST_URI} !.*index\.php 
    RewriteRule (.*) /index.php 
</IfModule> 
+0

這對我需要的東西非常合適。謝謝! – Skryn 2013-04-02 14:54:37

0

這簡單得多:

RedirectMatch temp .* http://www.newdomain.com/newdestination.html 

它將每個請求重定向到newdestination.html。

請注意,如果您指向與源相同的域,則會出現無限循環,並且會失敗。雖然這很好地指向一個新的領域。

相關問題