10/12/2017

PageSpeed Module for Nginx 配置記憶體快取

ngx_pagespeed 能讓網頁加速,但預設的目錄讀取很慢

如果還沒有安裝 module,請前往上一步配置 LNMP 安裝 ngx_pagespeed module

所以需要使用 tmpfs 記憶體快取

Linux 系統下有一個 /dev/shm 是由 tmpfs 掛載的

建立快取目錄,並賦予所有者
mkdir /dev/shm/ngx_pagespeed_cache
chown www:www /dev/shm/ngx_pagespeed_cache


nginx.conf 添加 pagespeed.conf 配置鏈結
server
{
include pagespeed.conf;


建立 pagespeed.conf 配置文件
vi pagespeed.conf


添加 ngx_pagespeed 配置,此配置僅適用 Discuz!
pagespeed on;
pagespeed RewriteLevel OptimizeForBandwidth;
pagespeed FileCachePath /dev/shm/ngx_pagespeed_cache;
pagespeed FileCacheSizeKb 98304;
pagespeed FileCacheCleanIntervalMs 10800000;
pagespeed FileCacheInodeLimit 500000;
#pagespeed EnableFilters responsive_images;
#pagespeed EnableFilters combine_heads;
#pagespeed EnableFilters outline_css;
#pagespeed EnableFilters outline_javascript;
#pagespeed EnableFilters move_css_above_scripts;
#pagespeed EnableFilters move_css_to_head;
#pagespeed EnableFilters rewrite_style_attributes;
#pagespeed EnableFilters prioritize_critical_css;
#pagespeed EnableFilters make_google_analytics_async;
#pagespeed EnableFilters make_show_ads_async;
#pagespeed EnableFilters include_js_source_maps;
#pagespeed EnableFilters canonicalize_javascript_libraries;
#pagespeed EnableFilters inline_google_font_css;
pagespeed EnableFilters local_storage_cache;
#pagespeed EnableFilters insert_ga;
#pagespeed EnableFilters convert_to_webp_animated;
#pagespeed EnableFilters insert_image_dimensions;
#pagespeed EnableFilters inline_preview_images;
#pagespeed EnableFilters resize_mobile_images;
pagespeed EnableFilters remove_comments;
pagespeed EnableFilters collapse_whitespace;
#pagespeed EnableFilters elide_attributes;
#pagespeed EnableFilters extend_cache_pdfs;
#pagespeed EnableFilters sprite_images;
#pagespeed EnableFilters rewrite_domains;
pagespeed EnableFilters trim_urls;
#pagespeed EnableFilters pedantic;
#pagespeed EnableFilters remove_quotes;
#pagespeed EnableFilters add_instrumentation;
#pagespeed EnableFilters dedup_inlined_images;
pagespeed EnableFilters insert_dns_prefetch;
#pagespeed EnableFilters in_place_optimize_for_browser;
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }


偽靜態 discuzx.conf 添加 # 註釋
#if (!-e $request_filename) {
#return 404;
#}


 

RewriteLevel 有三種配置:CoreFilters、OptimizeForBandwidth、PassThrough

 

CoreFilters 開啟的過濾器集
add_head
inline_import_to_link
combine_css
rewrite_css
fallback_rewrite_css_urls
rewrite_style_attributes_with_url
flatten_css_imports
rewrite_javascript
rewrite_javascript_external
rewrite_javascript_inline
combine_javascript
inline_css
inline_javascript
rewrite_images
convert_jpeg_to_progressive
convert_png_to_jpeg
convert_jpeg_to_webp
convert_to_webp_lossless
inline_images
recompress_images
recompress_jpeg
recompress_png
recompress_webp
convert_gif_to_png
strip_image_color_profile
strip_image_meta_data
jpeg_sampling
resize_images
resize_rendered_image_dimensions
extend_cache
extend_cache_css
extend_cache_images
extend_cache_scripts
convert_meta_tags


 

OptimizeForBandwidth 開啟的過濾器集
rewrite_css
rewrite_javascript
rewrite_javascript_external
rewrite_javascript_inline
convert_jpeg_to_progressive
convert_png_to_jpeg
convert_jpeg_to_webp
recompress_images
recompress_jpeg
recompress_png
recompress_webp
convert_gif_to_png
strip_image_color_profile
strip_image_meta_data
jpeg_sampling
in_place_optimize_for_browser


 

PassThrough 開啟的過濾器集
null


 

可以使用 PassThrough 指定 EnableFilters 開啟 CoreFilters 包含的核心過濾器集
add_head
combine_css
combine_javascript
convert_meta_tags
extend_cache
fallback_rewrite_css_urls
flatten_css_imports
inline_css
inline_import_to_link
inline_javascript
rewrite_css
rewrite_images
rewrite_javascript
rewrite_style_attributes_with_url


 

其它詳細過濾器集
https://www.modpagespeed.com/doc/config_filters

 

沒有留言:

張貼留言