下面是详细的“PHP开启gzip页面压缩实例代码”的攻略。
下面是详细的“PHP开启gzip页面压缩实例代码”的攻略。
什么是gzip压缩?
GZip是GNU zip格式(GNU程序的一部分)。例如,Firefox发出一个HTTP请求以请求HTML,CSS和JavaScript文件。发送服务器的响应是类似的,其中包含HTML,CSS和JavaScript文件。当gzip被启用时,服务器将压缩响应的内容并将其发送回浏览器,这可以使响应更小,速度更快。
开启gzip压缩
通过.htaccess文件开启
可以通过在网站根目录中的.htaccess文件中添加以下代码来启用gzip压缩:
<IfModule mod_deflate.c>
# 静态文件类型
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
此代码会压缩text/和application/类型的文件。
通过php.ini文件开启
-
打开php.ini文件。
-
找到以下配置项:
; Output buffering allows you to send header lines (including cookies) even
; after you send body content, at the price of slowing PHP's output layer a
; bit. You can enable output buffering during runtime by calling the output
; buffering functions. You can also enable output buffering for all files by
; setting this directive to On. If you wish to limit the size of the buffer
; to a certain size - you can use a maximum number of bytes instead of 'On', as
; a value for this directive (e.g., output_buffering=4096).
; Note: Output buffering can also be controlled via Appending to an ini file
; (output_buffering=4096).
; Default Value: Off
; Development Value: 4096
; Production Value: 4096
; http://php.net/output-buffering
output_buffering=4096
-
将
output_buffering的值更改为一个数字,例如1024或4096,以启用输出缓冲区并压缩输出。 -
保存文件并重启Apache服务器。
验证gzip是否开启
可以通过以下方法验证gzip是否成功开启:
-
使用浏览器的开发者工具查看页面加载内容的大小,在响应头部中应显示
Content-Encoding: gzip。 -
在命令行中使用
curl工具,例如:curl -H 'Accept-Encoding: gzip' -I http://example.com。响应头部应该显示Content-Encoding: gzip。
示例说明
示例一
使用第一种方法在.htaccess文件中开启gzip压缩:
<IfModule mod_deflate.c>
# 静态文件类型
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
示例二
使用第二种方法,在php.ini文件中开启gzip压缩:
-
打开
php.ini文件。 -
找到以下配置项:
output_buffering=4096
-
将
output_buffering的值更改为一个数字。 -
保存文件并重启Apache服务器。
本文标题为:PHP开启gzip页面压缩实例代码
基础教程推荐
- PHP基于mcript扩展实现对称加密功能示例 2022-12-29
- golang实现php里的serialize()和unserialize()序列和反序列方法详解 2022-11-28
- ThinkPHP框架整合微信支付之Native 扫码支付模式二图文详解 2023-01-05
- PHP实现用session来实现记录用户登陆信息 2022-11-26
- php数组一对一替换实现代码 2023-12-26
- Yii2框架实现利用mpdf创建pdf文件功能示例 2022-12-18
- PHP创建XML接口示例 2023-01-25
- PHP网站常见安全漏洞,及相应防范措施总结 2023-05-19
- php实现JWT(json web token)鉴权实例详解 2023-03-12
- 分享六个比较好用的php数组Array函数 2023-12-18
