如何在Ubuntu 16.04(Xenial Xerus)上安装nginx和google PageSpeed

Nginx(engine-x)是一款开源和高性能的HTTP服务器,反向代理和IMAP / POP3代理服务器。 Nginx的突出特点是稳定性,丰富的功能集,简单的配置和低内存消耗。 本教程将介绍如何从已编译Google PageSpeed模块的源代码为Ubuntu 16.04构建Nginx .deb软件包。


PageSpeed是由Google 开发的一个Web服务器模块,用于加快网站响应时间,优化返回的HTML并减少页面加载时间。 ngx_pagespeed功能包括:

  • 图像优化:剥离元数据,动态调整大小,重新压缩。
  • CSS和JavaScript的缩小,连接,内联和大纲。
  • 小资源内联。
  • 延迟图像和JavaScript加载。
  • HTML重写
  • 缓存生存期延长。

请参阅https://developers.google.com/speed/pagespeed/module/

先决条件

  • Ubuntu Server 16.04 - 64位
  • root权限

我们将在本教程中做什么:

  1. 安装必备软件包。
  2. 用ngx_pagespeed安装nginx。
  3. 测试。

安装构建依赖项

sudo apt-get install dpkg-dev build-essential zlib1g-dev libpcre3 libpcre3-dev unzip

用ngx_pagespeed安装nginx

第1步 - 添加nginx存储库

使用vim创建一个新的存储库文件/etc/apt/sources.list.d/nginx.list。

vim /etc/apt/sources.list.d/nginx.list

在那里你添加行:

deb http://nginx.org/packages/ubuntu/ xenial nginx
deb-src http://nginx.org/packages/ubuntu/ xenial nginx

保存文件并退出编辑器。

添加密钥并更新存储库:

sudo sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABF5BD827BD9BF62
sudo apt-get update

第2步 - 从ubuntu存储库下载nginx 1.10

为nginx源文件创建一个新目录,并使用apt下载nginx源:

cd ~
mkdir -p ~/new/nginx_source/
cd ~/new/nginx_source/
apt-get source nginx

有时,有一个错误: '包无法验证'

您可以通过键入命令来解决它:

rm -rf /var/lib/apt/lists/
apt-get update

接下来,安装所有依赖关系来构建nginx包。

apt-get build-dep nginx

第3步 - 下载Pagespeed

为PageSpeed创建一个新目录并下载PageSpeed源代码。

在本教程中,我们将使用pagespeed 1.11.33

mkdir -p ~/new/ngx_pagespeed/
cd ~/new/ngx_pagespeed/
ngx_version= 1.11.33.3
wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${ngx_version}-beta.zip
unzip release-${ngx_version}-beta.zip

cd ngx_pagespeed-release-${ngx_version}-beta/
wget https://dl.google.com/dl/page-speed/psol/${ngx_version}.tar.gz
tar -xzvf ${ngx_version}.tar.gz

第4步 - 使用Pagespeed配置nginx

转到'nginx_source'目录并使用vim编辑'rules'文件。

cd ~/new/nginx_source/nginx-1.10.1/debian/
vim rules

“COMMON_CONFIGURE_ARGS”下添加新行:

--add-module=../../ngx_pagespeed/ngx_pagespeed-release-1.11.33.3-beta \

保存并退出。

第5步 - 构建nginx的Ubuntu软件包并进行安装

转到nginx源目录,并使用dpkg-buildpackage命令从源代码构建nginx:

cd ~/new/nginx_source/nginx-1.10.1/
dpkg-buildpackage -b

nginx的Ubuntu软件包将保存在 〜/ new / ngix_source /下。 一旦建造完成,请查看目录:

cd ~/new/ngix_source/
ls

并使用dpkg命令安装nginx和modules deb。

dpkg -i *.deb

测试

第1步 - 使用Nginx命令进行测试

运行nginx -V来检查ngx_pagespeed模块是否已经内置到nginx中。

nginx -V

第2步 - 使用Curl命令进行测试

去nginx配置目录。

cd /etc/nginx/conf.d/

并编辑默认虚拟主机配置文件。

vim default.conf

粘贴下面的配置以启用ngx_pagespeed。

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$" { }

保存并退出。

接下来,测试nginx配置文件,确保没有错误:

nginx -t

重启nginx:

systemctl restart nginx

最后,使用curl命令访问nginx Web服务器:

curl -I 192.168.1.6

结论

nginx Web服务器有一个稳定和快速的开源HTTP服务器,支持各种模块进行内容传送优化。 其中一个模块是由Google开发的“PageSpeed模块”。 与apache不同,nginx模块不能动态加载,因此您在构建nginx软件包时必须选择所需的模块。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏