安装nginx带有ngx_pagespeed

1、Nginx的介绍:

Nginx是一款轻量级Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东新浪网易腾讯淘宝等。

 

 

2、ngx-pagespeed:

Ngx-pagespeed是一个免费的开源Nginx模块,可用于加快您的站点速度,并减少页面加载时间。 它可以自动将Web性能最佳做法应用于页面和关联资源,而无需修改现有内容或工作流。 您可以使用Ngx-pagepeed模块轻松优化各种文件,如CSS,HTML,png和jpg。

Ngx-pagepeed带有很多功能,其中一些主要功能如下所示:

l  支持图像动态调整大小,重新压缩和优化。

l  小资源内联。

l  HTML重写

l  缓存生存期延长。

l  延迟JavaScript和图像加载

 

 

3、下载nginx源码:

wget http://nginx.org/download/nginx-1.12.0.tar.gz

 

4、下载ngx_pagespeed源码:

wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.12.34.2-stable.zip

 

5、解压nginx和ngx_pagespeed源码包:

tar -xvzf nginx-1.12.0.tar.gz

tar -xvzf v1.12.34.2-stable.zip

(unzip v1.12.34.2-stable.zip -d .)

 

得到两个文件:

 

 

 

6、需要下载PageSpeed优化库来编译nginx,必须进入incubator-pagespeed-ngx-1.12.34.2-stable中,下载优化库,并解压:

1) cd incubator-pagespeed-ngx-1.12.34.2-stable

2) wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-x64.tar.gz

     3) tar -xvzf 1.12.34.2-x64.tar.gz

 

7、进入到nginx-1.12.0的源码目录,并进行编译:

 

1 ) ./configure --prefix=/usr/local/page_nginx --add-module=/usr/local/incubator-pagespeed-ngx-1.12.34.2-stable/ --user=nobody --group=nobody --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module

 

2) make

3 )  make install

 

8、配置nginx.conf文件:

server {

  listen       9090;

         server_name  192.168.1.103;

         # ngx_pagespeed的配置

          pagespeed on;  # 开启

          pagespeed FileCachePath /var/ngx_pagespeed_cache;  # 缓存目录

          pagespeed EnableFilters lazyload_images;   # 懒加载图片

          pagespeed EnableFilters convert_png_to_jpeg,convert_jpeg_to_webp;  # 转换为webp,必须要

          location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" { add_header "" ""; }

          location ~ "^/ngx_pagespeed_static/" { }

          location ~ "^/ngx_pagespeed_beacon" { }

 

          location / {

              default_type    text/plain;

              return 200 'sssss';

          }

          location /index {

              root /home/;

              index index.html;

         }

         location /page {

              root /home/;

              index page.html;

         }

         location /page/fs/ {  # X不行

             root /home;

         }

}

 

图片位置的第一种方式:

location ~ .*\.(gif|jpg|jpeg|png)$ {   # 配置文件的位置

           expires 24h;

           root /home/;    #指定图片存放路径

           try_files $uri $uri/ @webp;    # 如果文件不存在尝试生成 webp 图片

}

html和图片的位置:

 

index.html:

 

 

图片放置的第二种方式:

 location ~ .*\.(gif|jpg|jpeg|png)$ {   # 配置文件的位置

          expires 24h;

          root /home/images/img;    #指定图片存放路径

          try_files $uri $uri/ @webp;    # 如果文件不存在尝试生成webp图片

 }

html和图片的位置:

图片位置:

 

html位置:

 

 

 

 

 

 

 

9、启动nginx:

./nginx

./nginx -s reload  (重启)

 

10、浏览器访问:

192.168.1.103:9090/index.html

192.168.1.103:9090/page.html

 

11、项目上的配置:

 server {

         listen    8080;

          server_name  127.0.0.1:8443;

 

         pagespeed on;  # 开启

         pagespeed FileCachePath /var/ngx_pagespeed_cache;  # 缓存目录

         pagespeed EnableFilters lazyload_images;   # 懒加载图片

         pagespeed EnableFilters convert_png_to_jpeg,convert_jpeg_to_webp;  # 转换为webp,必须要

         location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" { add_header "" ""; }

         location ~ "^/ngx_pagespeed_static/" { }

         location ~ "^/ngx_pagespeed_beacon" { }

 

         server_tokens   off;

         error_page   404              /404.html;

         error_page   500 502 503 504  /50x.html;

         ssl_protocols TLSv1.1 TLSv1.2;

         root /usr/local/abbe/gitabbe/myabbe;

         location /static/ {

               root /usr/local/abbe/gitabbe/myabbe/specialpurpose/ecommerce/webapp;

               expires 24h;

               try_files $uri $uri/ @webp;

         }

         location /images/ {

              root /usr/local/abbe/gitabbe/myabbe/framework/images/webapp;

              expires 24h;

              try_files $uri $uri/ @webp;

          }

          location / {

               proxy_pass https://127.0.0.1:8443;

              proxy_set_header Host $host;

              proxy_set_header X-real-ip $remote_addr;

              proxy_set_header REMOTE-HOST $remote_addr;

              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        }

}

 

 

 

注意事项:

1、安装ngx_pagespeed前安装这个:

     yum install gcc-c++ pcre-devel zlib-devel make unzip libuuid-devel

 

2、出现这个错误:“build_from_source=false checking for psol … not found”,可能是 libuuid-devel 没有安装,运行下面命令安装即可。

yum install -y libuuid-deve

 

 

3、1.14.2的nginx  +  v1.13.35.2的ngx_pagespeed  + v1.13.35.2的优化库,是可以的!

      1.12.0的nginx  +  v1.12.34.2的ngx_pagespeed  + v1.12.34.2的优化库,是可以的!

     

 

 

3、1.14.2的nginx  +  v1.12.34.2的ngx_pagespeed  + v1.12.34.2的优化库

make的时候出现这个错误:不知道为什么???

 

 

转载于:https://www.cnblogs.com/fangsheng/p/10305029.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 Nginx安装 ngx_http_mp4_module 模块,需要按照以下步骤进行操作: 1. 确认 Nginx 是否支持 ngx_http_mp4_module 模块 首先需要确认 Nginx 是否支持 ngx_http_mp4_module 模块,可以使用以下命令查看 Nginx 是否已经编译了该模块: ``` nginx -V 2>&1 | grep -o with-http_mp4_module ``` 如果输出结果为 with-http_mp4_module,则说明 Nginx 已经编译ngx_http_mp4_module 模块;如果输出结果为空,则说明 Nginx 没有编译该模块。 2. 下载 ngx_http_mp4_module 模块 如果 Nginx 没有编译 ngx_http_mp4_module 模块,需要下载该模块并添加到 Nginx 中。可以从 Github 上下载该模块,链接为:https://github.com/kaltura/nginx-vod-module。 可以使用以下命令将 ngx_http_mp4_module 模块下载到 /opt 目录下: ``` cd /opt git clone https://github.com/kaltura/nginx-vod-module.git ``` 3. 编译 Nginx 并添加 ngx_http_mp4_module 模块 在编译 Nginx 时需要添加 --add-module=/opt/nginx-vod-module 参数来指定 ngx_http_mp4_module 模块所在的目录,具体命令如下: ``` ./configure --prefix=/usr/local/nginx --add-module=/opt/nginx-vod-module make make install ``` 4. 配置 NginxNginx 的配置文件中添加以下内容,即可使用 ngx_http_mp4_module 模块: ``` location /video/ { mp4; mp4_buffer_size 1m; mp4_max_buffer_size 5m; } ``` 其中,/video/ 是视频文件所在的目录。mp4 是 ngx_http_mp4_module 模块提供的指令,表示该目录下的文件都是 MP4 格式的视频文件。 mp4_buffer_size 和 mp4_max_buffer_size 是 ngx_http_mp4_module 模块提供的两个参数,用于控制视频文件的缓存大小。 5. 重启 Nginx 完成以上步骤后,需要重启 Nginx 使配置生效: ``` nginx -s reload ``` 至此,ngx_http_mp4_module 模块安装完成。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值