本文说明如何安装nginx(发音engine-x)与ngx_pagespeed模块。 PageSpeed可帮助您缩小CSS,JavaScript和图片,从HTML中删除空白,并执行许多其他任务。
安装所需的包
Pagespeed需要一些额外的软件包,您应该安装它们才能正常运行。 通过在终端中执行以下命令:
- sudo apt-get install build-essential zlib1g-dev libpcre3 libpcre3-dev unzip
下载ngx_pagespeed模块
安装必要的软件包后,必须下载模块。 在本文中,最新的ngx_pagespeed版本1.9.32.6。
1.确保您在主目录中:
2.定义将要安装的版本号:
3.现在,您需要下载模块的源代码:
- wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip
4.使用gunzip命令提取文件:
- unzip release-${NPS_VERSION}-beta.zip
5.移动到modules目录:
- cd ngx_pagespeed-release-${NPS_VERSION}-beta/
6.下载一些其他文件:
- wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz
7.使用tar命令提取文件:
- tar -xzvf ${NPS_VERSION}.tar.gz
下载并编译Nginx
现在我们已经下载了ngx_pagespeed,我们需要使用ngx_pagespeed模块编译Nginx。 在终端中执行如下命令。
1.您现在需要回到您的主目录:
2.在此命令中,您将定义将使用的Nginx的版本,以便您不必一次又一次地输入它。 在写这篇文章的时候,当前,稳定版本的Nginx是1.8.0:
3.从其官方网站使用wget下载Nginx源码:
- wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz
4.解压nginx压缩包
- tar -xvzf nginx-${NGINX_VERSION}.tar.gz
5.解压源码后,进入nginx目录
- cd nginx-${NGINX_VERSION}/
6.接下来,使用PageSpeed模块编译Nginx:
- ./configure --add-module=$HOME/ngx_pagespeed-release-${NPS_VERSION}-beta
7.准备编译
8.执行以下命令,安装Nginx与Pagespeed模块:
配置Nginx ngx_pagespeed
1.Pagespeed需要一个新目录,以便存储压缩的CSS和javascript的缓存:
- sudo mkdir /var/ngx_pagespeed_cache
2.您需要更改文件夹的所有权,以便Web服务器可以写入此目录:
- sudo chown www-data:www-data /var/ngx_pagespeed_cache
3.你需要添加一些新的代码在Nginx配置文件以激活该模块:
- sudo nano /usr/local/nginx/conf/nginx.conf
4.然后,您需要将以下代码添加到要启用PageSpeed模块的server块:
/usr/local/nginx/conf/nginx.conf:
- pagespeed on;
- pagespeed FileCachePath /var/ngx_pagespeed_cache;
- location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
- add_header "" "";
- }
- location ~ "^/pagespeed_static/" { }
- location ~ "^/ngx_pagespeed_beacon$" { }
还要确保Nginx作为www-data运行。 在conf文件的顶部,取消user注释并用www-data替换nobody。
启动Nginx
1.已完成配置,启动web服务器
- sudo /usr/local/nginx/sbin/nginx
2.停止web服务器
- sudo /usr/local/nginx/sbin/nginx -s stop
检查模块是否工作
您已编译并配置模块。 您可能需要在部署应用程序之前检查模块是否正常工作。 在本地计算机(即您的计算机)的终端上执行以下命令:
- curl -I website_url_or_IP_adress
你会在响应中看到类似X-Page-Speed:1.9.32.6的东西。 这意味着您已经在您的服务器上成功安装了ngx_pagespeed。