修改IIS的 ASPMaxRequestEntityAllowed
IIS 6 出于安全考慮, 默認最大請求200K(也即最大提交數(shù)據(jù)限額為200KByte, 204800Byte).
解決辦法:
1. 關閉 IIS Admin Service 服務
2. 打開 \Windows\system32\inesrv\metabase.xml
3. 修改 ASPMaxRequestEntityAllowed 的值為自己需要的, 默認為 204800 修改為1073741824
4. 啟動 IIS Admin Service
IIS 6.0中雇用HTTP Gzip壓縮的方法步驟:
1) 打開Internet信息服務(IIS)管理器,右擊"網(wǎng)站"->"屬性",選擇"服務"。在"HTTP壓縮"框中選中"壓縮應用程序文件"和"壓縮靜態(tài)文件",按需要設置"臨時目錄"和"臨時目錄的最大限制";
2) 在Internet信息服務(IIS)管理器,右擊"Web服務擴展"->"增加一個新的Web服務擴展...",在"新建Web服務擴展"框中輸入擴展名"HTTPCompression",添加"要求的文件"為C:\WINDOWS\system32\inetsrv\gzip.dll,其中 Windows系統(tǒng)目錄根據(jù)您的安裝可能有所不同,選中"設置擴展狀態(tài)為允許";
下面的這一步很重要。請認真看。
3) 使用文本編輯器打開C:\Windows\System32\inetsrv\MetaBase.xml(建議先備份),找到Location ="/LM/W3SVC/Filters/Compression/gzip",如果需要壓縮動態(tài)文件,則將 HcDoDynamicCompression設置為"TRUE",并在HcScriptFileExtensions中增加您要壓縮的動態(tài)文件后綴名,如aspx;如果需要壓縮靜態(tài)文件,則將HcDoStaticCompression和HcDoOnDemandCompression設置為 "TRUE",并在HcFileExtensions中增加您需要壓縮的靜態(tài)文件后綴名,如xml css等; HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的壓縮率,數(shù)字越小壓縮率越低;
4) 編輯完畢后保存MetaBase.xml文件;如果文件無法保存,則可能IIS正在使用該文件。打開"開始"->"管理工具"->"服務",停止"IIS Admin Service"后,即可保存;或者命令行下:net stop iisadmin.啟動用net start w3svc.
5) 最后,重新啟動IIS??梢缘紿TTP壓縮測試網(wǎng)站:這里
驗證結果。注意驗證的時候,驗證三次:一次只輸入域名。一次輸入你的靜態(tài)文件名,一次輸入你的動態(tài)文件名。三次都顯示為:Compression status: Compressed (gzip),即為成功。
可是我在配置了HTTP 壓縮之后發(fā)現(xiàn),當URL地址中不包含文件名時,壓縮就會失效,比如訪問http://m.aimjoke.net ,就沒有進行壓縮,而且訪問http://m.aimjoke.net/index.html, 壓縮就生效。IIS 6中的HTTP壓縮是根據(jù)MetaBase.xml中的HcScriptFileExtensions定義的擴展名進行匹配的,IIS 6在檢查匹配時,對于不含文件名的URL, 沒有先加上默認文檔名進行匹配,所以引起了這個問題。我采用的解決方法是將HcScriptFileExtensions的值設為空,對任何文件進行壓縮。
關鍵詞:IIS,ASP
閱讀本文后您有什么感想? 已有
0
人給出評價!
- 1
- 1
- 1
- 2
- 3
- 1