VeryNginx 是个非常有意思且便捷的 Nginx 扩展程序。最近新开了台 VPS,便想体验一下它带来的快感。

VeryNginx 有个不超过 5 行的安装方法,但作为强迫症我更喜欢使用自己编译的 Nginx。

基础依赖

  • PCRE (一个正则表达式库,nginx 伪静态可以用到)
  • OpenSSL(https 连接需要)
  • zlib(开启 gzip 需要,一个提供数据压缩用的函式库)

首先进入 /usr/local/src 目录:

  1. cd /usr/local/src

编译器安装

  1. apt-get install build-essential libtool

PCRE (8.41)

下载并解压 PCRE

  1. wget https://ftp.pcre.org/pub/pcre/pcre-8.41.tar.gz
  2. tar -xzvf pcre-8.41.tar.gz

zlib (1.2.11)

下载并解压 zlib

  1. wget http://www.zlib.net/zlib-1.2.11.tar.gz
  2. tar -xzvf zlib-1.2.11.tar.gz

OpenSSL (1.0.2l)

下载并解压 OpenSSL

lua-nginx-module 不支持 1.1.0

  1. wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz
  2. tar -xzvf openssl-1.0.2l.tar.gz

ngx_lua 依赖

VeryNginx 使用到了以下模块,自己编译 Nginx 时,需要包含以下模块才能正常使用。

  • http_ssl_module
  • http_stub_status_module
  • lua-nginx-module

ngx_lua 即为 lua-nginx-module

http_stub_status_module 和 http_ssl_module 只需要在 ./configure 时加上两行即可。lua-nginx-module稍微麻烦一点,它需要以下依赖:

  • LuaJIT 2.0 或 LuaJIT 2.1(推荐)或 Lua 5.1(5.2 目前不支持)
  • ngx_devel_kit(NDK)
  • ngx_lua

同样进入 /usr/local/src 目录:

  1. cd /usr/local/src

LuaJIT (2.1.0-beta3)

下载并安装 LuaJIT

  1. wget http://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz
  2. tar -xzvf LuaJIT-2.1.0-beta3.tar.gz
  3. cd LuaJIT-2.1.0-beta3
  4. make && sudo make install

它会自动将 LuaJIT 安装到 /usr/local/

设置环境变量:

  1. export LUAJIT_LIB=/usr/local/lib
  2. export LUAJIT_INC=/usr/local/include/luajit-2.1/

ngx_devel_kit (0.3.0)

下载并解压 ngx_devel_kit

  1. wget https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz
  2. tar -xzvf v0.3.0.tar.gz

ngx_lua (0.10.11rc2)

下载并解压 ngx_lua

  1. wget https://github.com/openresty/lua-nginx-module/archive/v0.10.11rc2.tar.gz
  2. tar -xzvf v0.10.11rc2.tar.gz

删除所有下载的压缩包:

  1. rm ./*.tar.gz

编译安装 Nginx

Nginx (1.12.1)

下载并解压 Nginx

  1. wget https://nginx.org/download/nginx-1.12.1.tar.gz
  2. tar -xzvf nginx-1.12.1.tar.gz

配置与编译

  1. cd nginx-1.12.1.tar.gz
  2. ./configure --prefix=/usr/local/nginx \
  3. --sbin-path=/usr/local/sbin/nginx \
  4. --pid-path=/usr/local/nginx/logs/nginx.pid \
  5. --error-log-path=/usr/local/nginx/logs/error.log \
  6. --http-log-path=/usr/local/nginx/logs/access.log \
  7. --with-ld-opt=-Wl,-rpath,/usr/local/lib/ \
  8. --with-http_ssl_module \
  9. --with-http_stub_status_module \
  10. --with-pcre=../pcre-8.41 \
  11. --with-zlib=../zlib-1.2.11 \
  12. --with-openssl=../openssl-1.0.2l \
  13. --add-module=../ngx_devel_kit-0.3.0 \
  14. --add-module=../lua-nginx-module-0.10.11rc2
  15. make
  16. sudo make install

安装 VeryNginx

下载与安装 VeryNginx

  1. git clone https://github.com/alexazhou/VeryNginx.git
  2. cd VeryNginx
  3. python install.py install verynginx

更新 Nginx 配置文件

有两种方式:

  1. 将 VeryNginx 的 nginx.conf 替换 /usr/local/nginx/conf 目录下的文件。

  2. 使用自己的配置文件,方法如下:

  • 在 http 配置块外部,加入:
    1. include /opt/verynginx/verynginx/nginx_conf/in_external.conf;
  • 在 http 配置块内部,加入:
    1. nclude /opt/verynginx/verynginx/nginx_conf/in_http_block.conf;
  • 在 server 配置块内部,加入:
    1. include /opt/verynginx/verynginx/nginx_conf/in_server_block.conf;

登录 VeryNginx

访问 http://yourdomain.com/verynginx/index.html 就可以见到 VeryNginx 的控制面板。
默认用户名和密码都是 verynginx,登录后请务必修改。

参考资料

 
 

手动编译 Nginx 并安装 VeryNginx的更多相关文章

  1. 编译nginx的源码安装subs_filter模块

    使用nginx的反向代理功能搭建nuget镜像服务器时,需要针对官方nuget服务器的响应内容进行字符串替换,比如将www.nuget.org替换为镜像服务器的主机名,将https://替换为http ...

  2. 手动编译PHP开发环境

    目录 手动编译PHP开发环境 问题复盘 部署环境及配置 目标环境 安装部署环境开始 首先安装PHP 安装mysql 安装nginx 手动编译PHP开发环境 这是一篇来自深夜加班的手稿 问题复盘 你有没 ...

  3. ffmpeg为视频添加时间戳 - 手动编译ffmpeg

    FFMPEG给视频加时间戳水印 项目中需要给视频添加时间戳,理所当然最好用的办法是ffmpeg.在找到正确的做法前,还被网上的答案timecode给水了一下(水的不轻,在这里转了2天),大概是这样写的 ...

  4. linux环境手动编译安装Nginx实践过程 附异常解决

    1.下载nginx源码包并解压 可在http://nginx.org/en/download.html下载.tar.gz的源码包,如(nginx-1.4.7.tar.gz) 或者使用云盘下载   ht ...

  5. 手动编译安装nginx

    1.下载nginx源码包并解压 可在http://nginx.org/en/download.html下载.tar.gz的源码包,如(nginx-1.4.7.tar.gz) 下载后通过tar -xvz ...

  6. LNAMP服务器环境搭建(手动编译安装)

    LNAMP服务器环境搭建(手动编译安装) 一.准备材料 阿里云主机一台,操作系统CentOS 6.5 64位 lnamp.zip包(包含搭建环境所需要的所有软件) http://123.56.144. ...

  7. nginx-1.4.4 + tcp_proxy_module手动编译安装

    Nginx开源软件默认没有提供TCP协议的负载均衡,下面记录一下我的安装过程: 1. 下载nginx最新稳定版的源码 mkdir /software cd /software yum install ...

  8. LNMP安装Let’s Encrypt 免费SSL证书方法:自动安装与手动配置Nginx

    前几天介绍了最新StartSSL免费SSL申请与配置,很多人看到部落介绍SSL证书安装时总是推荐了OneinStack,因为OneinStack提供了一键添加和配置Let's Encrypt 免费SS ...

  9. nginx-1.2.7 + tcp_proxy_module手动编译安装

    Nginx开源软件默认没有提供TCP协议的负载均衡,下面记录一下我的安装过程: 1. 下载nginx最新稳定版的源码.可访问:http://www.nginx.org 或 linux命令下载到本地: ...

随机推荐

  1. 04-从零玩转JavaWeb-JVM内存详情分析

    JVM内存划分栈与栈帧 JVM将内存主要划分为: 方法区 虚拟机栈 本地方法栈 堆 程序计数器 一.方法区:存放字节码,常量 ,静态变量,是一个共享的区域 二.虚拟机栈:执行方法其实就是栈帧入栈,出栈 ...

  2. IIS部署网站时常见问题解决

    首先服务器上安装IIS和Framework\v4.0 一.打开iis服务管理器 左侧目录中选择网站右键,选择添加网站 填写网站名称.选择项目存放的路径.ip地址和端口 VS用的是4.0,iis中网站也 ...

  3. 前端性能优化jQuery性能优化

    一.使用合适的选择器 $("#id"); 1.使用id来定位DOM元素无疑是最佳提高性能的方式,因为jQuery底层将直接调用本地方法document.getElementById ...

  4. 基于Nginx+redis的Asp.net站点搭建

    剧情介绍 在传统的信息系统(比如小规模的ERP\MES系统),往往只是进行简单的应用服务器和数据库服务器的分布式部署,以此来提高应用系统的负载能力,而伴随着访问的增大,应用服务器层面除了做硬件和网络的 ...

  5. 【推荐】地推统计结算工具SDK,手机开发首选

    地推是推广app的一种重要手段,同时地推结算对地推统计的精度的要求非常高,而openinstall就是一款符合要求的地推统计结算工具.它不仅多渠道统计能力强,安装设备识别精准,渠道统计精度高.还支持地 ...

  6. 【ThinkPHP框架学习 】(1) --- thinkphp 3.2.3 验证码验证使用教程分享

    框架版本:ThinkPHP框架     thinkphp 3.2.3 生成验证码 下面是最简单的方式生成验证码: $Verify = new \Think\Verify(); $Verify-> ...

  7. HTML学习笔记 CSS表格及轮廓案例 第八节 (原创)参考使用表

    #tb, tb1, tr, th, td { border: 5px solid blue; /*加边框*/ padding: 5px; /*内边距*/ } #tb1 { border-collaps ...

  8. 实现基于Keepalived高可用集群网站架构的多种方法

    实现基于Keepalived高可用集群网站架构 随着业务的发展,网站的访问量越来越大,网站访问量已经从原来的1000QPS,变为3000QPS,目前业务已经通过集群LVS架构可做到随时拓展,后端节点已 ...

  9. Magicodes.Admin.Core开源框架总体介绍

    框架说明 Magicodes.Admin.Core框架在ABP以及ASP.NET ZERO的基础上进行了封装和完善,目前基于.NET Core 2.0+(Framework版本),由于部分组件在.NE ...

  10. mac中利用brew实现多版本php共存以及任意切换

    1.安装brew 参考链接:https://brew.sh/index_zh-cn.html 2.安装php56 brew install homebrew/php/php56 3.配置php56 因 ...