一、nginx初始安装 1)首先确保机器安装了gcc g++ 查看是否安装gcc g++ which gcc g++ gcc -v g++ -v 没有可执行:yum -y install gcc gcc-c++ 或 yum groupinstall "Development Tools" 手动安装依次下载安装软件包的安装顺序是m4 --> gmp --> mpfr --> mpc --> gcc 2)下载最新的nginx及依赖包pcre、zlib、openssl放到/usr/local/src或其他目录下。 注意pcre,openssl不要太新,否则后面的configure及make都可能报错;如pcre2,openssl3目前不支持最新的nginx1.18 目前下载包为nginx-1.18.0.tar.gz、openssl-1.0.2p.tar.gz、pcre-8.44.tar.gz、zlib-1.2.11.tar.gz。 pcre(支持rewrite),zlib(支持gzip模块)和openssl(支持ssl模块) 3)命令tar -zxvf 解压以上4个包在/usr/local/src下 进入nginx-1.18.0目录。注意三个依赖包可不make&&make install。 执行./configure --prefix=/usr/local/nginx --with-pcre=../pcre-8.44/ --with-zlib=../zlib-1.2.11/ --with-openssl=../openssl-1.0.2p --with-ipv6 --with-poll_module --with-http_stub_status_module --with-http_ssl_module。注意nginx编译时有模块模块,可通过查看/usr/local/src/nginx-1.18.0/auto/options文件查看为YES的便是默认启用,如ipv6,这个版本是支持了,不需要带上相关模块上去。nginx从1.11.5版本开始默认自动支持ipv6,所以不再需要--with-ipv6编译选项。 成功后执行make && make install 会安装到/usr/local/nginx目录下。 以上为常规安装,需要加载的模块可以通过./configure --help查看。模块分二类,一类为nginx自带,一类为第三方,第三方的需要下载重新编译 三方模块下载地址:https://www.nginx.com/resources/wiki/modules/ 如下载了lua-nginx-module-0.10.19.tar.gz放到跟nginx-1.18.0.tar.gz同级目录解压tar -zxvf lua-nginx-module-0.10.19.tar 如下载了nginx-http-concat-master.zip放到跟nginx-1.18.0.tar.gz同级目录下解压unzip nginx-http-concat-master.zip 在nginx-1.18.0目录下执行./configure 时候加上--add-module=/第三方模块目录 如 ./configure 之前的脚本追加--add-module=lua-nginx-module-0.10.19 --add-module=../nginx-http-concat-master/便可。报错的话,可以查看该三方模块安装说明。 二、nginx升级安装 1)升级安装注意必须gcc版本一致,否则会出现执行报错;故最好在源机器上进行编译。编译时候相关依赖包不一定必须之前的版本,可以是新版本,只是需要注意编译时路径正确,编译时候也可以不用带上--prefix=/usr/local/nginx。特别是三方模块,注意与主nginx版本是否兼容。不兼容需用新的三方模块。 2)A机器上编译nginx的gcc版本必须比B机器上gcc版本低或者一致才能copy过去在B机器上运行。确认方法是查看nginx版本./nginx -V 显示中可以看到gcc版本,如果版本等于或者低于运行机器上gcc -v版本,则能运行。 3)编译./configure追加新模块后make,不要再make install。在/usr/local/src/nginx-1.18.0/objs下nginx复制到生产目录便可。 ./nginx -V 查看。比如我这里使用configure命令进行配置时,只带了一个参数,如下面所示,命令是:./configure --prefix=/usr/local/nginx 编译完成后nginx -V命令查看时,可以看到,只有一个--prefix=/usr/local/nginx参数,根本看不到默认安装的模块。因此这种方法只适合查看自己添加的参数、编译时附带的可选模块或三方模块。 三、其它说明 1)查看是否安装pcre rpm -qa pcre rpm -ql pcre pcre-config --version 没有该命令是没有安装pcre-devel 2)查看是否安装zlib find /usr/ -name zlib.pc /usr/lib/x86_64-linux-gnu/pkgconfig/zlib.pc cat /usr/lib/x86_64-linux-gnu/pkgconfig/zlib.pc 3)查看是否安装openssl openssl version -a 4)快速安装依赖包:yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel 5)快速安装所有依赖包:yum -y install vim lrzsz tree screen psmisc lsof tcpdump wget ntpdate gcc gcc-c++ glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel net-tools iotop bc zip unzip zlib-devel bash-completion nfs-utils automake libxml2 libxml2-devel libxslt libxslt-devel perl perl-ExtUtils-Embed
nginx安装及升级
原创
©著作权归作者所有:来自51CTO博客作者lysweb的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:虚拟机上对centos7扩容空间
下一篇:tcpkill与tcpview
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章