安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,
检查是否安装: gcc -v
如果没有gcc环境,需要安装gcc:
yum install gcc-c++
- PCRE
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。
rpm -qa pcre #检查是否安装,如果安装了 会显示版本 没安装就什么都没有
yum install -y pcre pcre-devel #安装
注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。
- zlib
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。
yum install -y zlib zlib-devel
- OpenSSL
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。
yum install -y openssl openssl-devel
注意这些环境一定要有
二 编译安装
将nginx-1.8.0.tar.gz拷贝至linux服务器/usr/local/目录下。
解压:
tar -zxvf nginx-1.8.0.tar.gz
进入 nginx-1.8.0
cd nginx-1.8.0
创建目录:
mkdir -p /var/temp/nginx
设置参数(执行):
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi\
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-http_ssl_module
此步骤很重要, 如果不需要额外更改配置可直接执行:./configure
注意:上边将临时文件目录指定为/var/temp/nginx**,需要在/var下创建temp及nginx****目录**
编译安装:
make
make install
安装成功查看安装目录 :cd ../nginx
启动与暂停
启动:
cd /usr/local/nginx/sbin/
./nginx
报错
这种情况是因为端口冲突
查看nginx端口号 : cat /usr/local/nginx/conf/nginx.conf
查找出占用的进程将其杀死 : netstart -ntlp|grep 80, 然后再启动
查看进程
ps -aux | grep nginx
注意:执行./nginx启动nginx,这里可以-c指定加载的nginx配置文件,如下:
./nginx -c /usr/local/nginx/conf/nginx.conf
如果不指定-c**,nginx在启动时默认加载conf/nginx.conf文件,此文件的地址也可以在编译安装nginx时指定./configure的参数(--conf-path=** 指向配置文件(nginx.conf**))**