我在我的HTTP響應標頭中有「服務器:Apache」並且想要刪除它。 我跟着喜歡加入這說明httpd.conf中:無法刪除服務器:Apache標頭
ServerSignature Off
ServerTokens Prod
Header unset Server
但最後有沒有效果。前兩行改變了頭文件的內容(之前它也包含了關於操作系統和PHP的信息),但是我需要完全刪除它。 如何做到這一點?
我在我的HTTP響應標頭中有「服務器:Apache」並且想要刪除它。 我跟着喜歡加入這說明httpd.conf中:無法刪除服務器:Apache標頭
ServerSignature Off
ServerTokens Prod
Header unset Server
但最後有沒有效果。前兩行改變了頭文件的內容(之前它也包含了關於操作系統和PHP的信息),但是我需要完全刪除它。 如何做到這一點?
阿帕奇不要讓你徹底取消設置此。實際上,有些開發人員強烈反對增加這一點,儘管它是一個簡單的代碼更改,幾次被建議(甚至寫入!)。只有一些討論提出並拒絕了這些討論,請參閱here和here。
他們給各方面的原因,其中包括:
安全通過隱藏的是一個神話,並給出了安全的錯覺,因爲它很容易指紋服務器,看看哪些軟件很可能是基於關於它如何迴應某些要求。雖然有一個真相的說法,指定ServerTokens爲默認爲完全肯定是一個安全問題,泄漏太多信息應該在默認情況下顯示在公共網站上。
它可能會或可能不會違反HTTP規範不提供服務器頭。這似乎是在一些爭議中,仍然沒有回答爲什麼他們不允許你將它改爲隨機字符串而不是Apache。
這可能使得更難計數Apache安裝的數量。如果它容易指紋和反思自我的原因,這違背了上面的論點1。
這使得調試問題變得困難,如果指紋非常容易,並且您認爲任何需要調試的人都知道或能夠找出確切版本,這些問題再次違背上面的參數1。
如果代理服務器知道另一端的服務器類型,它可能會以不同方式處理請求。代理服務器恕我直言,這是錯誤的,我懷疑它已經做了很多了。
如果人們真的想要修改或隱藏這個頭文件,他們可以編輯源代碼。坦率地說,這是一個危險的建議,建議沒有經驗的代碼的人去做,如果他們從非打包的版本運行,可能會導致其他安全問題,只是爲了增加這一點。
他們甚至竟把在official documentation添加此:
設置ServerTokens小於最小不建議,因爲它 使得它更難以調試interoperational問題。另外 請注意,禁用服務器:標頭根本不會使 服務器更安全。 「通過默默無聞的安全」的想法是一個神話,並導致錯誤的安全感。
整個情況是,恕我直言,荒謬,他們應該改變立場,讓人們配置軟件,因爲他們想要的。在更糟糕的情況下,它不會像他們說的那樣添加任何內容,並且它會停止整個問題每隔一段時間就會被提出,儘管我個人認爲您發佈的不必要的信息越少越好,所以希望能夠關閉它。
在此之前,不可能掉頭,你留下了:
Rant over。
您可能還沒有啓用mod_headers
。
檢查它是否是啓用:
[email protected]: a2query -m headers
如果mod headers
啓用輸出應該是這樣的headers (enabled by ...)
。
如果它不能夠通過使用激活模塊:
a2enmod headers
它啓用,我可以通過htaccess添加其他標題,但不能刪除這一個 – Audiophile
你有'mod_headers'enabled?這對於取消設置標題字段是必要的。 – maxhb
我確實。它已啓用並正常工作,但無法刪除此標頭 – Audiophile
還行。剛剛用我自己的網絡服務器測試過它,它確實不適用於這一個標題字段:-( – maxhb