在本教程中,我们将向您展示如何在 Ubuntu 16.04 LTS 上使用 ngx_pagespeed 模块安装和配置 Nginx。 对于那些不知道的人,PageSpeed (ngx_pagespeed) 是 Google 创建的一个 Nginx 模块,旨在通过重写网页以减少延迟和带宽来帮助使 Web 更快。 对于安装,我们需要使用 PageSpeed 模块从源代码编译 Nginx,因为 Nginx 不支持动态模块加载(DSO),除非您想构建自己的 rpm 或 deb 文件。
本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo
‘ 到命令以获取 root 权限。 我将向您展示在 Ubuntu 16.04 (Xenial Xerus) 服务器上逐步安装带有 pagespeed 模块的 Nginx。
在 Ubuntu 16.04 LTS 上使用 Ngx_Pagespeed 模块安装 Nginx
步骤 1. 首先,通过运行以下命令确保所有系统包都是最新的 apt-get
终端中的命令。
sudo apt-get update sudo apt-get upgrade sudo apt-get install dpkg-dev build-essential zlib1g-dev libpcre3 libpcre3-dev unzip
步骤 2. 添加 Nginx 存储库。
在终端中运行以下命令来编译最新的 Nginx 主线版本:
wget https://nginx.org/keys/nginx_signing.key apt-key add nginx_signing.key
创建一个新的存储库并编辑 sources.list 文件:
nano /etc/apt/sources.list
在此文件末尾添加以下两行:
deb https://nginx.org/packages/mainline/ubuntu/ xenial nginx deb-src https://nginx.org/packages/mainline/ubuntu/ xenial nginx
步骤 3. 从源包下载 Nginx。
为 Nginx 源文件创建一个新目录并使用下载 Nginx 源 apt
命令:
mkdir ~/nginx && cd ~/nginx sudo apt source nginx
查看下载的文件:
### ls ~/nginx/ nginx-1.11.1 nginx_1.11.1-1~xenial.dsc nginx_1.11.1-1~xenial.debian.tar.xz nginx_1.11.1.orig.tar.gz
步骤 4. 下载 ngx_pagespeed 源码包。
要使用 ngx_pagespeed 模块编译 Nginx,我们还需要 ngx_pagespeed 源包。 前往 Github ngx_pagespeed 下载页面:
wget https://codeload.github.com/pagespeed/ngx_pagespeed/zip/v1.11.33.4-beta
解压到当前目录:
unzip v1.11.33.4-beta cd ngx_pagespeed-1.11.33.4-beta/
接下来,我们还需要下载 psol 库。 (PageSpeed 优化库)并提取它:
wget https://dl.google.com/dl/page-speed/psol/1.11.33.4.tar.gz tar xvf 1.11.33.4.tar.gz
步骤 5. 配置 Nginx 以使用 Pagespeed 构建。
首先,编辑Nginx编译规则文件:
nano ~/nginx/nginx-1.11.1/debian/rules
在“COMMON_CONFIGURE_ARGS”下添加新行:
--add-module=/home/username/ngx_pagespeed-1.11.33.2-beta
步骤 6. 启动编译 Nginx Ubuntu 包。
转到 Nginx 源目录并使用以下命令从源代码构建 Nginx dpkg-buildpackage
命令:
cd ~/nginx/nginx-1.11.1/ apt build-dep nginx dpkg-buildpackage -b
完成后,里面会有7个deb文件 ~/nginx
/ 目录。 我们只需要安装 nginx_1.11.1-1~xenial_amd64.deb 或 nginx_1.11.1-1~xenial_i386.deb 包,取决于你的操作系统架构。 其他的是 Nginx 动态模块包和调试包:
cd ~/nginx dpkg -i nginx_1.11.1-1~xenial_amd64.deb
现在让我们启动 Nginx:
systemctl start nginx
步骤 7. 在 Nginx 中配置 ngx_pagespeed 模块。
现在编辑 Nginx 服务器块配置文件:
nano /etc/nginx/nginx.conf
在 server 部分添加以下 pagespeed 指令:
# enable pagespeed module on this server block pagespeed on; # Needs to exist and be writable by nginx. Use tmpfs for best performance. pagespeed FileCachePath /var/ngx_pagespeed_cache; # 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$" { } pagespeed RewriteLevel CoreFilters;
最后重启Nginx服务:
systemctl reload nginx
步骤 8. 检查 PageSpeed 是否正常工作。
转到您的网站。 刷新几次然后检查您的页面来源。 按 Ctrl+F 键并搜索 pagespeed。 您将看到您的许多网站资源已被 pagespeed 处理,或者您可以发出以下命令:
curl -I -p https://y0ur-domain.com| grep X-Page-Speed
恭喜! 你已经成功安装了 nginx pagespeed。 感谢您使用本教程在 Ubuntu 16.04 LTS (Xenial Xerus) 系统上安装带有 ngx_pagespeed 模块的 Nginx。 如需更多帮助或有用信息,我们建议您查看 Nginx 官方网站.