2012-07-25 84 views
0

我幫助管理幾百個網站,而且我們經常收到來自所有者的請求,以防止搜索引擎將其網站的IP地址編入索引。然後,我們修改他們的重定向文件包括以下(定製自己的IP地址和域名,當然),服了不允許文件,所以它不會得到索引:機器人的通用IP重定向

RewriteCond %{HTTP_HOST} ^127\.0\.0\.1$ [NC] 
RewriteRule robots.txt robots_disallow.txt [I,O,L] 

這工作不錯,但必須配置爲每個IP,因爲它的硬編碼英寸我怎樣才能寫一個通用的重寫條件運行在任何 IP地址輸入?我讀過你可以做Regex驗證,但是我還沒有看到很多在線文檔,告訴你如何爲多個未知數字做這件事。

任何人有任何建議?

謝謝!

回答

0

您可能更喜歡使用301重定向到該網站的實際域名。這會向蜘蛛教導正在爬行的資源的正確位置。因此,我通常會做的是這樣的事情就在的重寫規則開頭:

RewriteCond %{HTTP_HOST} !^www\.yourdomain\.com$ 
RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [R=301,L] 

這也有是有用的所有網絡流量,而不僅僅是蜘蛛的好處。此外,它還將照顧指示流量說,yourdomain.com www.yourdomain.com

+0

這是一個好主意,但由於每個網站都有自己的域名,它將需要在每個網站上單獨更改。此外,這會干擾我們通過內部子域名訪問其網站(例如,google.com也可通過site123.mycompany.com訪問)。 我需要的是一個通用重寫,我可以同時滾動到所有數百個框以提供[robots_disallow.txt](http://support.google.com/webmasters/bin/answer.py?hl= en&answer = 156449),當它試圖通過ip地址爲網站建立索引時。 – watkinsmatthewp 2012-07-26 13:14:11

+0

我喜歡捕捉所有非域請求的想法,而不是檢查請求是否爲IP地址。這樣的事情呢? : 'RewriteCond%{HTTP_HOST}!^ \。com RewriteRule robots.txt robots_disallow.txt [R = 301,L]' – watkinsmatthewp 2012-07-26 13:25:52

+0

@watkinsmatthewp除非您需要使用!\。com $作爲正則表達式(這意味着.com必須位於主機名的末尾)。 – 2012-07-26 13:30:06