Note: This feature is depreciated with EasyEngine v3.6.0.
Note: Test your site properly before using this in production.
Adding Nginx repo
If you are EasyEngine user then you can skip this step
For Ubuntu 12.04/14.04:
add-apt-repository -y ppa:rtcamp/nginx
apt-get update
For Debian 6/7:
echo "deb http://packages.dotdeb.org $(lsb_release -sc) all" > /etc/apt/sources.list.d/dotdeb-$(lsb_release -sc).list
apt-get update
Installation of Nginx Pagespeed
For Ubuntu 12.04/14.04:
apt-get install nginx-custom
Note: If you are using EasyEngine then this step is not required
For Debian 6/7:
apt-get install nginx-extras
This will install nginx-extras on your server, by removing nginx-full.
Creating Pagespeed global configuration
Create new pagespeed global configuration file
vim /etc/nginx/conf.d/pagespeed.conf
and paste following code into it
# Turning the module on and off
pagespeed on;
# Configuring PageSpeed Filters
pagespeed RewriteLevel PassThrough;
# Needs to exist and be writable by nginx. Use tmpfs for best performance.
pagespeed MemcachedServers "127.0.0.1:11211";
pagespeed FileCachePath /var/ngx_pagespeed_cache;
# PageSpeed Admin
pagespeed StatisticsPath /ngx_pagespeed_statistics;
pagespeed GlobalStatisticsPath /ngx_pagespeed_global_statistics;
pagespeed MessagesPath /ngx_pagespeed_message;
pagespeed ConsolePath /pagespeed_console;
pagespeed AdminPath /pagespeed_admin;
pagespeed GlobalAdminPath /pagespeed_global_admin;
# PageSpeed Cache Purge
<span class="pln">pagespeed </span><span class="typ">EnableCachePurge</span><span class="pln"> on</span><span class="pun">;</span><span class="pln">
pagespeed </span><span class="typ">PurgeMethod</span><span class="pln"> PURGE</span><span class="pun">;</span>
Creating site specific Pagespeed configuration
Create new site specific configuration file
vim /etc/nginx/common/pagespeed.conf
Paste following code into it
# PageSpeed Admin
location /ngx_pagespeed_statistics { include common/acl.conf; }
location /ngx_pagespeed_global_statistics { include common/acl.conf; }
location /ngx_pagespeed_message { include common/acl.conf; }
location /pagespeed_console { include common/acl.conf; }
location ~ ^/pagespeed_admin { include common/acl.conf; }
location ~ ^/pagespeed_global_admin { include common/acl.conf; }
# Ensure requests for pagespeed optimized resources go to the pagespeed handler
# and no extraneous headers get set.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }
Enable Pagespeed for site
Open site Nginx configuration:
vim /etc/nginx/sites-available/example.com
add following line at in the configurations:
include common/pagespeed.conf;
and restart Nginx
nginx -t && service nginx restart
Enable/Disable PageSpeed Filters
Please paste following filter inside /etc/nginx/sites-available/example.com
# HTTPS Support
# pagespeed FetchHttps enable;
# PageSpeed Filters
# CSS Minification
# pagespeed EnableFilters combine_css,rewrite_css;
# JS Minification
# pagespeed EnableFilters combine_javascript,rewrite_javascript;
# Images Optimization
#pagespeed EnableFilters lazyload_images;
#pagespeed EnableFilters rewrite_images;
#pagespeed EnableFilters convert_jpeg_to_progressive,convert_png_to_jpeg,convert_jpeg_to_webp,convert_to_webp_lossless;
# Remove comments from HTML
#pagespeed EnableFilters remove_comments;
# Remove WHITESPACE from HTML
#pagespeed EnableFilters collapse_whitespace;
# CDN Support
#pagespeed MapRewriteDomain cdn.example.com www.example.com;
By default we commented all filters. You can uncomment filters that you need for your site.
Also you can add various filters from here to this file: https://developers.google.com/speed/pagespeed/module/filters
Test your site
You can test site by pointing browser to example.com, and seeing its html code.
View Pagespeed statistics
You can view Pagespeed statics by poinitng your browser to http://example.com/ngx_pagespeed_statistics
Disable Pagespeed temporary
You can disable pagespeed temporary by using this url: http://example.com/?PageSpeed=off
Purge Pagespeed Cache
You can purge specific file cache by hitting following url http://exmple.com/pagespeed_admin/cache?purge=/path/file.ext