Gzip压缩和利用浏览器缓存不适用于我的商店

时间:2017-07-28 09:00:37

标签: php .htaccess optimization magento-1.9

我正在尝试优化我的商店,我在我的Select UserID, Substring((Select ',' + WorkGroup From MyTable B Where B.UserID=A.UserID For XML Path('')),2,8000) As Workgroups From MyTable A where workgroup like '%%PC-%%' Group By UserID 文件中添加了Gzip代码和杠杆浏览器缓存代码:

.htaccess

2 个答案:

答案 0 :(得分:5)

启用Apache mod_headers和mod_expires模块

  

请通过以下代码检查商店是否启用mod_expires和mod_headers。

<?php phpinfo();?>
  

如果两个扩展程序都无法访问您的服务器,请按以下步骤操作: -

第1步: -

  

现在使用SSH控制台登录服务器并继续执行以下步骤:

启用mod_headers:

sudo a2enmod headers

启用mod_expires:

sudo a2enmod expires
  

第2步: -

     

完成服务器更新后,需要重启Apache服务器   使这些变化有效。在SSH控制台中输入以下行   重启Apache。

service apache2 restart
  

或者通过SSH中的代码重新启动服务器:

reboot

在.htaccess文件中使用以下代码。

<IfModule mod_headers.c>
     # YEAR
     <FilesMatch "\.(ico|gif|jpg|jpeg|png|flv|pdf)$">
          Header set Cache-Control "max-age=29030400"
     </FilesMatch>
     # WEEK
     <FilesMatch "\.(js|css|swf|woff)$">
         Header set Cache-Control "max-age=604800"
     </FilesMatch>
     # 45 MIN
     <FilesMatch "\.(html|htm|txt)$">
        Header set Cache-Control "max-age=86400"
     </FilesMatch>

     Header set Connection keep-alive

</IfModule>

<ifModule mod_gzip.c>
    mod_gzip_on Yes
    mod_gzip_dechunk Yes
    mod_gzip_item_include file \.(html?|txt|css|js|php|pl|asp|html)$
    mod_gzip_item_include handler ^cgi-script$
    mod_gzip_item_include mime ^text/.*
    mod_gzip_item_include mime ^application/x-javascript.*
    mod_gzip_item_exclude mime ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

<ifmodule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
</ifmodule>

清除商店缓存并重新加载网站网址后,请重新检查gtmetrix工具或使用工具的任何内容。

答案 1 :(得分:0)

以下是GZIP压缩的代码

<ifModule mod_deflate.c>

   SetOutputFilter DEFLATE
   AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-javascript application/x-httpd-php
   BrowserMatch ^Mozilla/4 gzip-only-text/html
   BrowserMatch ^Mozilla/4\.0[678] no-gzip
   BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
   BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
   SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip
   Header append Vary User-Agent env=!dont-vary
</ifModule>

<ifModule mod_gzip.c>
  mod_gzip_on Yes
  mod_gzip_dechunk Yes
  mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
  mod_gzip_item_include handler ^cgi-script$
  mod_gzip_item_include mime ^text/.*
  mod_gzip_item_include mime ^application/x-javascript.*
  mod_gzip_item_exclude mime ^image/.*
  mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

并且对于Leverage浏览器缓存,您的代码是正确的,但如果它不起作用,那么您必须检查服务器上是否启用了mod_expires和mod_headers模块。