Wget
執行 wget 時出現 406 Not Acceptable 錯誤
我在 crontab 中有這個命令:
wget --quiet --delete-after http://boms.ro/admincp/cron/s/9abf0f42c1e4f55fdb87d8237cdde
當我使用 –debug 參數執行它時,我得到以下響應:
Caching boms.ro => 188.240.2.30 Created socket 3. Releasing 0x00000000010c97e0 (new refcount 1). ---request begin--- GET /admincp/cron/s/9abf0f42c1e4f55fdb87d8237cdde HTTP/1.0 User-Agent: Wget/1.12 (linux-gnu) Accept: */* Host: boms.ro Connection: Keep-Alive ---request end--- ---response begin--- HTTP/1.0 406 Not Acceptable Date: Thu, 12 Apr 2012 18:29:45 GMT Server: LiteSpeed Connection: Keep-Alive Keep-Alive: timeout=5, max=100 Cache-Control: private, no-cache, max-age=0 Pragma: no-cache Content-Type: text/html Content-Length: 372 ---response end--- Registered socket 3 for persistent reuse. Skipping 372 bytes of body: [<html> <head><title> 406 Not Acceptable </title></head> <body><h1> 406 Not Acceptable </h1> This request is not acceptable<hr /> Powered By <a href='http://www.litespeedtech.com'>LiteSpeed Web Server</a><br /> <font face="Verdana, Arial, Helvetica" size=-1>LiteSpeed Technologies is not responsible for administration and contents of this web site!</font></body></html> ] done.
在我的請求中什麼被認為是“不可接受的”?
我看到一些關於
mod_security
“LiteSpeed”伺服器包中包含的(可能是一個錯誤的包含規則?)可能是原因的參考。嘗試禁用
mod_security
- 順便說一句,406
如果是這種情況,那麼響應程式碼的使用非常弱。
406 Not Acceptable 的含義是您的客戶端(在本例中為 wget 或代理)發送了 Accept: 標頭,但伺服器無法以它收到的 Accept: 標頭中列出的格式發送文件。Accept-* 標頭也會導致相同的行為。
因為您的接受標頭設置為接受任何 MIME 類型並且不包括對特定語言或任何內容的請求,所以這可能是 http 伺服器(或它正在執行的 CGI 應用程序)中的錯誤。