2010-09-28 35 views
2

所以我剛纔瞭解到可以設置爲服務器響應頭部分的X-Robots-Tag。現在我已經瞭解了這個特定的領域,我想知道當我通過PHP輸出一個網頁時,是否應該設置其他特定的字段? I did see this list of responses,但我應該手動設置?你喜歡手動設置什麼?當我輸出一個網頁時,我應該明確設置什麼HTTP標頭響應?

重述,除了...

header('X-Robots-Tag: noindex, nofollow, noarchive, nosnippet', true); 

...還有什麼我應該設置?

在此先感謝!

+1

每個頭文件都有一個特定的目的,所以它取決於你期望的行爲。 – casablanca 2010-09-28 01:27:16

回答

1

你不一定需要手動設置任何人,我不發送任何除非絕對必要:大多數響應頭Web服務器的工作,而不是應用程序(或採取Location &態勢緩存相關頭文件)。對於「X- *」頭,X意味着它們不是「官方」,因此瀏覽器可能會或可能不會解釋它們意味着什麼 - 比如,您可以添加任意的「X-My-App -Version「標題發佈到公共項目,以粗略瞭解人們在何處使用它,但除非請求者知道如何處理它,否則它只是額外的信息。

我認爲大多數X-header通常都是通過HTML作爲元標籤交付的。例如,​​,它的作用與X-Robots-Tag相同。無論如何,這可以更好地處理元標記版本,因爲它不會因輸出緩衝而跳過,因爲它可以做到,並且它會自然緩存,因爲它是頁面的一部分。

+0

我的網頁每月更新一次。我應該設置什麼,如果有的話,緩存頭信息? – TroubledGuym 2010-09-28 02:17:22

+0

手動設置緩存標頭更適用於當您要將頁面強制爲* not *緩存時。檢查Web服務器頁面中的Expires頭(通過Firebug或telnet到端口80等),看看你的默認值是什麼 - 很可能。 – tadamson 2010-09-28 05:24:55

0

這些是來自Stackoverflow(本頁)的標題,所以答案是,可能沒有。 你不希望你的網站索引(noindex)?

Status=OK - 200 
Cache-Control=public, max-age=60 
Content-Type=text/html; charset=utf-8 
Content-Encoding=gzip 
Expires=Tue, 28 Sep 2010 01:23:00 GMT 
Last-Modified=Tue, 28 Sep 2010 01:22:00 GMT 
Vary=* 
Set-Cookie=usr=t=&s=; domain=.stackoverflow.com; expires=Mon, 28-Mar-2011 01:22:00 GMT; path=/; HttpOnly 
Date=Tue, 28 Sep 2010 01:21:59 GMT 
Content-Length=6929 

這個頭文件對我來說非常方便。即使元標記丟失,字符也能正確顯示。

Content-Type: text/html; charset=utf-8 
+0

我不會說「來得方便」,我會說這是你絕對需要發送的一個頭。沒有關於其編碼的元信息的文檔現在是不負責任的。 – deceze 2010-09-28 01:41:07

+0

這是標題,元標記在,當然你需要設置它。但是,如果您創建文檔(帶有一些utf8字符的空白php文件),則需要先發送此標題,以便瀏覽器可以正確解碼。如果你用HTML聲明它,就沒有必要發送這個頭文件,這就是我說的「方便」,我個人總是使用它。 – 2010-09-28 01:48:26

相關問題