去评论
dz插件网

discuz x3.4 x3.5使用google pagespeed模块加速优化网站访问速度教程[基于宝塔]

admin
2021/11/17 10:26:18
Discuz!X3.4 X3.5论坛使用宝塔7.x正式版nginx环境安装启用谷歌ngx_pagespeed优化网页加速教程
语文水平比较差看不懂的,操作之前请先备份网站及服务器快照备份!!!

终端运行:
  1. bash <(curl -f -L -sS https://ngxpagespeed.com/install) \
  2.      --nginx-version latest
下载完后显示的第一个暂停按:Ctrl+C

  1. cd /www/server/nginx/src
  1. nginx -V
复制configure arguments: 后面的如下举例:

  1. ./configure --user=www --group=www --prefix=/www/server/nginx --add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module --add-module=/www/server/nginx/src/ngx_cache_purge --add-module=/www/server/nginx/src/nginx-sticky-module --with-openssl=/www/server/nginx/src/openssl --with-pcre=pcre-8.43 --with-http_v2_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_stub_status_module --with-http_ssl_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-ld-opt=-Wl,-E --with-cc-opt=-Wno-error --with-ld-opt=-ljemalloc --with-http_dav_module --add-module=/www/server/nginx/src/nginx-dav-ext-module
然后在当前路径执行:

  1. ./configure --user=www --group=www --prefix=/www/server/nginx --add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module --add-module=/www/server/nginx/src/ngx_cache_purge --add-module=/www/server/nginx/src/nginx-sticky-module --with-openssl=/www/server/nginx/src/openssl --with-pcre=pcre-8.43 --with-http_v2_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_stub_status_module --with-http_ssl_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-ld-opt=-Wl,-E --with-cc-opt=-Wno-error --with-ld-opt=-ljemalloc --with-http_dav_module --add-module=/www/server/nginx/src/nginx-dav-ext-module --add-module=/root/incubator-pagespeed-ngx-latest-stable
然后:

  1. make
然后:

  1. make install
  1. cp objs -r /nginx/usr/local/nginx/sbin/
  1. mkdir /var/ngx_pagespeed_cache
  1. mkdir /var/log/pagespeed
  1. chown www.www /var/ngx_pagespeed_cache
  1. chown www.www /var/log/pagespeed
  1. service nginx restart
然后在宝塔——左侧——网站:
点开你要加速的网站:
配置文件:
如图位置插入下面配置:



插入配置如下:

  1. # 启用ngx_pagespeed 开始
  2. pagespeed on;
  3. # setting
  4. pagespeed SupportNoScriptEnabled false;
  5. #列出优化过程中所有失败的请求,debug 时很有用,失败的信息会打印到 error log 里
  6. #pagespeed ListOutstandingUrlsOnError on;
  7. # 配置服务器缓存位置和自动清除触发条件(空间大小、时限)
  8. #路径请提前创建好,可以放在内存也可以放在临时文件夹中
  9. #pagespeed CreateSharedMemoryMetadataCache /var/ngx_pagespeed_cache 51200;
  10. #pagespeed DefaultSharedMemoryCacheKB 51200;
  11. pagespeed FileCachePath /var/ngx_pagespeed_cache;
  12. pagespeed FileCacheSizeKb 2048000;
  13. pagespeed FileCacheCleanIntervalMs 43200000;
  14. pagespeed FileCacheInodeLimit 500000;
  15. # Configuring the in-memory LRU Cache
  16. pagespeed LRUCacheKbPerProcess     1024;
  17. pagespeed LRUCacheByteLimit        16384;
  18. pagespeed HttpCacheCompressionLevel 3;
  19. pagespeed EnableCachePurge on;
  20. # 过滤器级别(自定义模式)
  21. pagespeed RewriteLevel PassThrough;
  22. # 一个标识而已(若在浏览器开发者工具里的链接请求响应标头看到此标识,则说明 PageSpeed 生效)
  23. pagespeed XHeaderValue "Powered By 127.0.0.1:2020";
  24. # HTML页面链接转小写(SEO 优化,推荐)
  25. pagespeed LowercaseHtmlNames on;
  26. # 开启 https
  27. pagespeed FetchHttps enable,allow_self_signed,allow_unknown_certificate_authority,allow_certificate_not_yet_valid;
  28. # 重置 HTTP Vary 头 除非有特殊需求,建议不开启,默认配置往往是最佳配置
  29. pagespeed RespectVary on;
  30. #PageSpeed能够根据响应头中指定的任何内容安全策略调整其优化
  31. pagespeed HonorCsp on;
  32. #PageSpeed 默认遵守 Cache-Control: no-transform 协议, 表示不可被中间代理软件改写,如果想让优化效果最大化,可以关闭
  33. #pagespeed DisableRewriteOnNoTransform off;
  34. # 启用 样式属性/CSS/JavaScript/Images 重写,其它功能的先决开关
  35. pagespeed EnableFilters rewrite_style_attributes,rewrite_css,rewrite_javascript,rewrite_images;
  36. ###########缓存 ##########
  37. #相当于同时使用了extend_cache_images, extend_cache_scripts和 extend_cache_css
  38. pagespeed EnableFilters extend_cache;
  39. pagespeed EnableFilters extend_cache_pdfs;
  40. pagespeed EnableFilters local_storage_cache;
  41. #开启使用Redis(和memcached只能先其一)
  42. pagespeed RedisServer "127.0.0.1:6379";
  43. # memcached优化,如果没有memcached优化请删去
  44. #pagespeed MemcachedThreads 1;
  45. #pagespeed MemcachedServers "127.0.0.1:11211";
  46. ######## 过滤规则 ########
  47. # 过滤不需要启用的目录或文件
  48. #pagespeed Disallow "*/wp-admin/*";
  49. #pagespeed Disallow "*/wp-login.php*";
  50. pagespeed Disallow "*/vps-pingfen/";
  51. # 启用压缩空白过滤器
  52. pagespeed EnableFilters collapse_whitespace;
  53. # filters
  54. pagespeed RewriteLevel CoreFilters;
  55. # 移除 html 注释
  56. pagespeed EnableFilters remove_comments,collapse_whitespace;
  57. # 预解析DNS查询
  58. pagespeed EnableFilters insert_dns_prefetch;
  59. #使Google Analytics异步
  60. pagespeed EnableFilters make_google_analytics_async;
  61. ########JS和CSS########
  62. # 启用JavaScript库卸载 #谷歌被QQ,并不确定这个设置有没有副作用
  63. pagespeed EnableFilters canonicalize_javascript_libraries;
  64. # 把多个CSS文件合并成一个CSS文件(比较容易引起主题版面混乱,所以我禁用了
  65. pagespeed EnableFilters combine_css;
  66. # 重写CSS,首先加载渲染页面的CSS规则
  67. pagespeed EnableFilters prioritize_critical_css;
  68. # google字体直接写入html 目的是减少浏览器请求和DNS查询
  69. pagespeed EnableFilters inline_google_font_css;
  70. # 把多个JavaScript文件合并成一个JavaScript文件,禁用原因同上,大家可以酌情开启
  71. pagespeed EnableFilters combine_javascript;
  72. # 删除带默认属性的标签
  73. pagespeed EnableFilters elide_attributes;
  74. # 更换被导入文件的@import,精简CSS文件
  75. pagespeed EnableFilters flatten_css_imports;
  76. pagespeed CssFlattenMaxBytes 5120;
  77. # 启用JavaScript缩小机制
  78. pagespeed EnableFilters rewrite_javascript;

  79. ####### 图片########
  80. # 延时加载图片
  81. pagespeed EnableFilters lazyload_images;
  82. # 不加载显示区域以外的图片
  83. pagespeed LazyloadImagesAfterOnload off;
  84. pagespeed LazyloadImagesBlankUrl "https://cdn.daniao.org/1.gif";
  85. # 启用图片优化机制(主要是 inline_images, recompress_images, convert_to_webp_lossless(这个命令会把PNG和静态Gif图片转化为webp), and resize_images.)
  86. pagespeed EnableFilters rewrite_images;
  87. #组合 convert_gif_to_png, convert_jpeg_to_progressive, convert_jpeg_to_webp, convert_png_to_jpeg, jpeg_subsampling, recompress_jpeg, recompress_png, recompress_webp, #strip_image_color_profile, and strip_image_meta_data.
  88. pagespeed EnableFilters recompress_images;
  89. # 将JPEG图片转化为webp格式
  90. pagespeed EnableFilters convert_jpeg_to_webp;
  91. # 将动画Gif图片转化为动画webp格式
  92. pagespeed EnableFilters convert_to_webp_animated;

  93. pagespeed EnableFilters inline_preview_images;
  94. pagespeed EnableFilters resize_mobile_images;
  95. pagespeed EnableFilters responsive_images,resize_images;
  96. pagespeed EnableFilters insert_image_dimensions;
  97. pagespeed EnableFilters resize_rendered_image_dimensions;
  98. pagespeed EnableFilters strip_image_meta_data;
  99. pagespeed EnableFilters convert_jpeg_to_webp,convert_to_webp_lossless,convert_to_webp_animated;
  100. pagespeed EnableFilters sprite_images;
  101. pagespeed EnableFilters convert_png_to_jpeg,convert_jpeg_to_webp;
  102. #让JS里引用的图片也加入优化
  103. pagespeed InPlaceResourceOptimization on;     
  104. pagespeed EnableFilters in_place_optimize_for_browser;      
  105. # admin直接访问 <域名>/pagespeed_admin 就可以打开管理员界面了。
  106. pagespeed Statistics on;
  107. pagespeed StatisticsLogging off;
  108. pagespeed LogDir /var/log/pagespeed;
  109. pagespeed AdminPath /pagespeed_admin;
  110.   
  111. # 启用ngx_pagespeed 结束
保存后:

  1. service nginx restart
检测加速效果:

  1. https://tool.chinaz.com/Gzips/?q=www.你的网址
如图: