1.nginx官网下载安装包,选择最新的版本
http://nginx.org/download/nginx-1.15.5.tar.gz
解压安装包
[root@localhost usr]# tar -zxvf ./nginx-1.15.5.tar.gz
2.安装c++
查看c++编译环境是否安装
[root@localhost nginx-1.15.5]# rpm -qa gcc-c++
可以看出来c++已经安装过了
3.安装nginx及相关组件
①openssl安装
https://www.openssl.org/source/
下载安装包
[root@localhost usr]# wget https://www.openssl.org/source/openssl-fips-2.0.16.tar.gz
解压安装包
[root@localhost usr]# tar -zxvf ./openssl-fips-2.0.16.tar.gz
./config && make && make install
安装日志太多,以下是安装结束的日志
②pcre安装
下载pcre安装包
wget https://ftp.pcre.org/pub/pcre/pcre2-10.32.tar.gz
解压安装包
[root@localhost usr]# tar -zxvf ./pcre2-10.32.tar.gz
pcre安装包解压目录
开始安装pcre
[root@localhost pcre2-10.32]# ./configure && make && make install
pcre安装完成
③zlib安装
下载zlib安装包
wget http://www.zlib.net/zlib-1.2.11.tar.gz
解压安装包
[root@localhost usr]# tar -zxvf ./zlib-1.2.11.tar.gz
开始安装
[root@localhost zlib-1.2.11]# ./configure && make && make install
安装完成
④nginx安装
开始安装
[root@localhost zlib-1.2.11]# ./configure && make && make install
报错了,应该是PCRE包的问题,但是刚才已经安装了,网上查阅资料,需要安装pcre-devel、zlib-devel、openssl-devel包
1)pcre-devel安装
https://pkgs.org/download/pcre-devel
[root@localhost usr]# wget http://mirror.centos.org/centos/6/os/x86_64/Packages/pcre-devel-7.8-7.el6.x86_64.rpm
下载到的是一个rpm文件
安装该文件
[root@localhost usr]# rpm -ivh ./pcre-devel-7.8-7.el6.x86_64.rpm
2)zlib-devel安装
[root@localhost usr]# yum -y install zlib-devel*
3)openssl-devel安装
[root@localhost usr]# yum -y install openssl-devel*
pcre-devel、zlib-devel、openssl-devel安装完成,重新安装nginx
[root@localhost nginx-1.15.5]# ./configure && make && make install
nginx安装完成
简化第2、3步:一个一个安装太繁琐,做下整合
[root@localhost nginx]# yum -y install gcc* pcre* pcre-devel* zlib* zlib-devel* openssl* openssl-devel*
检查这些依赖包是否全部安装
[root@localhost nginx]# rpm -qa gcc* pcre* pcre-devel* zlib* zlib-devel* openssl* openssl-devel*
已全部安装
4.启动nginx
①先找到nginx的安装目录
[root@localhost /]# whereis nginx
可以看到nginx已经安装到目录/usr/local/nginx下了,进入该安装目录
启动脚本是/nginx/sbin/nginx,启动nginx
[root@localhost nginx]# /usr/local/nginx/sbin/nginx
报着个错的原因是80端口被占用,解决办法是杀掉nginx进程
[root@localhost nginx]# killall -9 nginx
再次启动
[root@localhost nginx]# /usr/local/nginx/sbin/nginx
查看是否启动成功
[root@localhost nginx]# ps aux|grep nginx
nginx启动成功,浏览器访问虚拟机IP测试
发现访问不了,一般是防火墙端口过滤规则没设置,查看防火墙状态及过滤规则设置
只有22和7001端口可以入站访问,添加入站规则白名单
[root@localhost etc]# vim /etc/sysconfig/iptables
添加-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
保存后,重启防火墙服务
[root@localhost /]# service iptables restart
浏览器重新访问
结束