Cet article explique principalement comment activer gzip en PHP pour améliorer la vitesse de réponse des pages Web. J'espère que cela pourra aider tout le monde.
1. Activez gzip dans Apache (cette méthode nécessite de redémarrer le serveur) :
a. Activez le module :
LoadModule deflate_module modules/mod_deflate.so LoadModule headers_module modules/mod_headers.so
b. httpd.conf Ajouté
<ifmodule deflate_module> DeflateCompressionLevel 9 AddOutputFilterByType DEFLATE text/html text/plain text/xml application/json application/xml AddOutputFilter DEFLATE js css AddOutputFilter INCLUDES .shtml .htm .xml .php .html</ifmodule>
c. Redémarrez le serveur
2. Activez gzip en php
Principe :
header("Content-Encoding: gzip");echo gzencode('songjiankang');
Exemple 1 :
function ob_gzip ($content) // $content 就是要压缩的页面内容,或者说饼干原料{ if (! headers_sent() && // 如果页面头部信息还没有输出 extension_loaded("zlib") && // 而且zlib扩展已经加载到PHP中 strstr($_SERVER["HTTP_ACCEPT_ENCODING"], "gzip")) // 而且浏览器说它可以接受GZIP的页面 { $content = gzencode($content . " \n//此页已压缩", 9); // 此页已压缩”的注释标签,然后用zlib提供的gzencode()函数执行级别为9的压缩,这个参数值范围是0-9,0表示无压缩,9表示最大压缩,当然压缩程度越高越费CPU。 // 然后用header()函数给浏览器发送一些头部信息,告诉浏览器这个页面已经用GZIP压缩过了! header("Content-Encoding: gzip"); header("Vary: Accept-Encoding"); header("Content-Length: " . strlen($content)); } return $content; // 返回压缩的内容,或者说把压缩好的饼干送回工作台。}ob_start('ob_gzip');
Exemple 2 :
#ob_gzhandler 为php内置函数,具体参考手册ob_start('ob_gzhandler');
Recommandations associées :
Comment activer la compression GZIP dans Apache
Page de jugement php Si le fichier a été compressé par gzip
Vous apprendre à activer la compression Gzip dans Node.js
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!