php控制頁面瀏覽器緩衝與啟用gzip傳送_PHP教程

來源:互聯網
上載者:User
本文章來給各位同學介紹php控制頁面瀏覽器緩衝與啟用gzip傳送頁面方法,希望此代碼對各位同這會有所協助,同時沒有伺服器許可權的朋友可這樣來實現伺服器gzip頁面傳輸。

php執行個體gzip傳輸頁面

代碼如下 複製代碼

可以用於靜態資源與html頁面,修改一下也適合於其他語言

//緩衝到期時間(Cache-Control, http1.1協義), 推薦使用
$secs = 0; //秒
header("Cache-Control: s-maxage=$secs, max-age=$secs, must-revalidate, proxy-revalidate");

// 緩衝到期時間為24小時(Expires)
$offset = 3600 * 24;
$expire = "Expires: " . gmdate("D, d M Y H:i:s", time() + $offset) . " GMT";
Header($expire);

//Last-Modified, 最後修改的時間
$gmt_mtime = gmdate('D, d M Y H:i:s', time() ) . ' GMT';
header("Last-Modified: " . $gmt_mtime );

//啟用gzip壓縮
ob_start();
... your php code ...
... your php code ...
... your php code ...
header('Content-Length: ' . ob_get_length());
ob_end_flush();

如果你有伺服器許可權可參考apache開啟gzip傳輸


一,找到你的httpd.conf檔案,開啟找到如下

LoadModule deflate_module modules/mod_deflate.so

把前面的#去了,因為mod_deflate.so模組預設是關閉的,好了下面一下

二,把現面代碼放到你httpd.conf檔案最後面就好了。

代碼如下 複製代碼


SetOutputFilter DEFLATE
DeflateCompressionLevel 5
AddOutputFilterByType DEFLATE text/html text/css image/gif image/jpeg image/png application/x-javascript

重啟你的apache就KO了

iis開啟gzip頁面傳輸

1. 開啟Internet資訊服務(IIS)管理器,右擊“網站”-》“屬性”,選擇“服務”。在“HTTP壓縮”框中選中“壓縮應用程式檔案”和“壓縮靜態檔案”,按需要設定“臨時目錄”和“臨時目錄的最大限制”;

2. 在Internet資訊服務(IIS)管理器,右擊“Web服務擴充”-》“增加一個新的Web服務擴充。。.”,在“建立Web服務擴充”框中輸入副檔名“HTTP Compression”,添加“要求的檔案”為C:WINDOWSsystem32inetsrvgzip.dll,其中Windows系統目錄根據您的安裝可能有所不同,選中“設定擴充狀態為允許”;

3. 使用文字編輯器開啟C:WindowsSystem32inetsrvMetaBase.xml(建議先備份),

找到Location =“/LM/W3SVC/Filters/Compression/gzip用於設定gzip壓縮,

找到Location =”/LM/W3SVC/Filters/Compression/deflate“用於設定deflate壓縮。 上面兩個節點緊挨著。並且設定的屬性相同。

如果需要壓縮動態檔案,則將HcDoDynamicCompression設定為”TRUE“,

並在HcScriptFileExtensions中增加您要壓縮的動態檔案尾碼名,如aspx;

如果需要壓縮靜態檔案,則將HcDoStaticCompression和HcDoOnDemandCompression設定為”TRUE“,

並在HcFileExtensions中增加您需要壓縮的靜態檔案尾碼名,如xml、css等;

HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的壓縮率,數值在0-10, 預設為0。

HcDynamicCompressionLevel屬性說明:HcDynamicCompressionLevel Metabase Property

HcOnDemandCompLevel 屬性說明:HcOnDemandCompLevel Metabase Property

說明: 這兩個屬性值一般推薦設定為9, 具有最佳性價比。

注意

1. 在編輯MetaBase.xml前需要停止IIS,可以使用 net stop iisadmin

2. 修改完成後開啟iisadmin服務,並執行iisreset命令

關於SEO的測試

壓縮是否對SEO有影響,經測試,開啟後仍然可以被很好的收錄。

關於對SEO影響的研究文章,還可以參考下面的幾篇文章。

具體的效率問題,將繼續監控以作研究

http://www.bkjia.com/PHPjc/632650.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/632650.htmlTechArticle本文章來給各位同學介紹php控制頁面瀏覽器緩衝與啟用gzip傳送頁面方法,希望此代碼對各位同這會有所協助,同時沒有伺服器許可權的朋友可...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.