Created
February 14, 2015 15:09
-
-
Save russmckendrick/e32e7fa9e49b9a75ca98 to your computer and use it in GitHub Desktop.
NGINX & ngx_pagespeed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Install the packages need to compile NGINX with ngx_pagespeed | |
yum install -y gcc-c++ pcre-dev pcre-devel zlib-devel make unzip openssl-devel | |
# Add a user for NGINX | |
useradd nginx | |
usermod -s /sbin/nologin nginx | |
# Download the latest version of ngx_pagespeed and psol | |
# See https://github.com/pagespeed/ngx_pagespeed/releases for latest release | |
cd /usr/local/src/ | |
NPS_VERSION=1.9.32.3 | |
wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip | |
unzip release-${NPS_VERSION}-beta.zip | |
cd ngx_pagespeed-release-${NPS_VERSION}-beta/ | |
wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz | |
tar -xzvf ${NPS_VERSION}.tar.gz | |
# Download the latest version of NGINX and compile | |
# See http://nginx.org/en/download.html for latest release | |
cd /usr/local/src/ | |
NGINX_VERSION=1.7.10 | |
wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz | |
tar -xvzf nginx-${NGINX_VERSION}.tar.gz | |
cd nginx-${NGINX_VERSION}/ | |
./configure --add-module=/usr/local/src/ngx_pagespeed-release-${NPS_VERSION}-beta --with-http_ssl_module --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log | |
make && make install | |
# Add a systemd service file | |
cat >> /usr/lib/systemd/system/nginx.service << NGINX_SERVICE | |
[Unit] | |
Description=The nginx HTTP and reverse proxy server | |
After=syslog.target network.target remote-fs.target nss-lookup.target | |
[Service] | |
Type=forking | |
PIDFile=/run/nginx.pid | |
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf | |
ExecReload=/bin/kill -s HUP $MAINPID | |
ExecStop=/bin/kill -s QUIT $MAINPID | |
PrivateTmp=true | |
[Install] | |
WantedBy=multi-user.target | |
NGINX_SERVICE | |
# Enable and start the service | |
systemctl enable nginx | |
systemctl start nginx |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pagespeed on; | |
pagespeed FileCachePath /var/ngx_pagespeed_cache; | |
pagespeed MemcachedThreads 1; | |
pagespeed MemcachedServers "localhost:11211"; | |
location ~ "^/pagespeed_static/" { } | |
location ~ "^/ngx_pagespeed_beacon$" { } | |
location /ngx_pagespeed_statistics { allow 127.0.0.1; deny all; } | |
location /ngx_pagespeed_global_statistics { allow 127.0.0.1; deny all; } | |
location /ngx_pagespeed_message { allow 127.0.0.1; deny all; } | |
location /pagespeed_console { allow 127.0.0.1; deny all; } | |
location /pagespeed_admin { allow 127.0.0.1; deny all; } | |
# 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 "" ""; | |
} | |
pagespeed EnableFilters canonicalize_javascript_libraries,extend_cache,extend_cache_pdfs,combine_css,combine_javascript,move_css_above_scripts,insert_dns_prefetch,rewrite_javascript,rewrite_images,prioritize_critical_css,rewrite_css,rewrite_style_attributes,convert_meta_tags,lazyload_images,collapse_whitespace,move_css_to_head,remove_comments,remove_quotes,inline_css,inline_javascript; | |
pagespeed UseExperimentalJsMinifier on; | |
pagespeed MapOriginDomain "http://media-glass.es" "https://media-glass.es"; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment