Home  >  Article  >  Backend Development  >  IIS6.0 enable Gzip method and PHP Gzip function sharing_PHP tutorial

IIS6.0 enable Gzip method and PHP Gzip function sharing_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:28:51820browse

GZIP compression for IIS

1. First back up the IIS configuration file, copy C:Windowssystem32inetsrvmetabase.xml to another backup folder. C:Windowssystem32inetsrvmetabase.xml is the core configuration file of IIS. Once the integrity of the file is destroyed, IIS will It cannot run normally and is so serious that it requires reinstalling the system.

2. Start Internet Information Services (IIS) Manager in the Start menu, right-click on the "Website" properties, open the "Services" tab, and check the two options of "HTTP Compression". "Temporary directory" and "Temporary directory maximum capacity" can be set as needed. Click OK after the settings are completed.

3. Right-click "Web Service Extension" under "Website", add a new Web service extension, and fill in the extension name as "HTTP Compression" or anything else. Add "required files": c:windowssystem32inetsrvgzip.dll, and check "Set extension status to allow", and click OK after completion.

4. The following steps are a bit complicated. If you are not sure you can understand it, it is best not to try it. Right-click the "Local Computer" properties of "Internet Information Services", check "Allow direct editing of the configuration database" and confirm.

5. Run notepad C:Windowssystem32inetsrvmetabase.xml in the start menu and open the metabase.xml file. Please confirm again that the file has been backed up before making any changes.

6. Open metabase.xml with a text editor and use the search function to find "IIsCompressionScheme". There are three places, all together, namely deflate, gzip and Parameters. Deflate is also a compression format, but its performance is not as good as gzip. . What needs to be modified are the deflate and gzip sections. The parameters are basically the same and need to be modified.

HcDynamicCompressionLevel is used to set the compression rate. The default is 0 and the maximum is 10. Low compression level produces slightly larger compressed files but has less overall impact on CPU and memory resources. High compression levels generally produce smaller compressed files but use more CPU time and memory. Some people say that setting it to 9 is the most cost-effective.

HcFileExtensions is used to set the extension of compressed static files. The default is htm, html, and txt. Add extensions according to the website's own conditions. The most basic ones are js and css. Pay attention to the original line break format when adding.

HcScriptFileExtensions is used to set compressed dynamic file extensions. The default is asp, dll and exe. You can add extensions as needed, such as aspx, php, etc. You can leave this field's default deletion blank so that all dynamic responses are sent compressed. Additionally, all unspecified static file types in HcFileExtensions will be dynamically compressed and therefore not placed in the cache. Likewise, HcDoDynamicCompression must be set to true for dynamic compression.

PHP Gzip

Copy code The code is as follows:
/*
* Compressed data
*/
public static function ob_gzip($content) // $content is the page content to be compressed, or biscuit ingredients
{
if( !headers_sent() && // If the page header information has not been output yet
extension_loaded( "zlib") && // And the zlib extension has been loaded into PHP
strstr($_SERVER["HTTP_ACCEPT_ENCODING"],"gzip")) // And the browser says it can accept GZIP pages
{
          $content = gzencode($content." OK",9); //This page has been compressed" comment tag, and then use the gzencode() function provided by zlib to perform compression level 9. The value range of this parameter is 0 -9, 0 means no compression, 9 means maximum compression. Of course, the higher the degree of compression, the more CPU it will cost.

//Then use the header() function to send some header information to the browser to tell the browser about this page. Already compressed with GZIP!
header("Content-Encoding: gzip");
header("Vary: Accept-Encoding");
header("Content-Length: ".strlen($ content));
}
return $content; //Return the compressed content, or send the compressed cookies back to the workbench.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/780720.htmlTechArticleIIS GZIP compression 1. First back up the IIS configuration file, copy C:Windowssystem32inetsrvmetabase.xml to another backup file In the folder. C:Windowssystem32inetsrvmetabase.xml is...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn