1.检查服务器上是否安装好了gcc、g++开发库
gcc --version
g++ --version
如果没有,则先安装gcc和g++的对应的环境安装包,如服务器系统是centos,则使用以下命令。
yum install gcc
yum install gcc gcc-c++
2.源码编译prce,zlib,openssl,nginx
如果是windows环境,首先使用rz
命令将包含prce,zlib,openssl,nginx的安装压缩包传入到服务器的root/nginx目录,如果没有用mkdir
新建一个。
pcre,zlib,前者用于url rewrite,后者用于gzip压缩,openssl用于后续可能升级到https时使用。
pcre安装,执行以下命令
tar -zxvf pcre-8.42.tar.gz
cd pcre-8.42/
./configure&&make&&make install
zlib安装,执行以下命令
tar -zxvf pcre-8.42.tar.gz
cd pcre-8.42/
./configure&&make&&make install
openssl安装,执行以下命令
注:有的机器上会有openssl,但通常是1.0的版本,源码编译里的是1.1的版本,安装并不冲突。
tar -zxvf openssl-1.1.0h.tar.gz
cd openssl-1.1.0h/
./config&&make&&make install
nginx安装,执行以下命令
注:有的机器上会有openssl,但通常是1.0的版本,源码编译里的是1.1的版本,安装并不冲突。
tar -zxvf nginx-1.14.0.tar.gz
cd nginx-1.14.0/
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-pcre=../pcre-8.42 --with-zlib=../zlib-1.2.11 --with-openssl=../openssl-1.1.0h
make&&make install
3.测试nginx是否安装成功
cd /usr/local/nginx/sbin
./nginx
如果出现以下报错,则代表80端口正在被占用。
nginx [emerg] bind() to 0.0.0.0:80 failed(98:address already in use)
需要进行如下处理
ps -e | grep nginx #查看是否已经启动了nginx
netstat -ltunp #查看0.0.0.0:80端口谁占用了
kill -9 <targetPID> #关掉对应的进程
最后访问服务器的浏览器
links http://localhost/ #或者本机的IP地址
如果能正常显示nginx首页,则表示安装成功。
参考资料: