nginx安装
如何查看已经安装nginx的编译选项,通过nginx -V
一、添加运行nginx服务进程的用户
添加用户组:groupadd -r nginx
添加属于某个用户组的用户:useradd -r -g nginx nginx
二、下载nginx源码
curl -O http://nginx.org/download/nginx-1.10.2.tar.gz
三、解压nginx源码包
tar -zxvf nginx-1.10.2.tar.gz
四、编译nginx
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_spdy_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-http_realip_module
ngx_http_v2_module模块(1.9.5)提供了一种用于支持HTTP/2,并且取代的ngx_http_spdy_module模块。
默认情况下不构建此模块,应使用--with-http_v2_module配置参数启用它。
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-http_realip_module
安装pcre依赖,安装OpenSSL依赖,安装zlib依赖
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-http_realip_module --with-pcre=/home/ygk1992/pcre-8.41 --with-openssl=/home/ygk1992/openssl-1.0.0a --with-zlib=/home/ygk1992/zlib-1.2.11
注意:
- --with-pcre=指定pcre源码包路径(注意是解压之后的源码包路径,不需要安装)
- --with-zlib=指定zlib源码包路径(注意是解压之后的源码包路径,不需要安装)
- --with-openssl=指定openssl源码包路径(注意是解压之后的源码包路径,不需要安装)
五、把nginx添加到环境变量中
在/etc/profile 中加入:
`export NGINX_HOME=/usr/local/nginx`
`export PATH=$PATH:$NGINX_HOME/sbin`
保存,
执行 source /etc/profile ,使配置文件生效。
六、查看某个端口是否被占用
lsof -i :port命令,port(端口号)是在0-65535范围内整数。
例如:查看nginx80端口是否被占用,lsof -i:80
Starting nginx (via systemctl): Job for nginx.service failed because a configured resource limit was exceeded. See "systemctl status nginx.service" and "journalctl -xe" for details.
[FAILED]
八、如何设置nginx开机启动和chkconfig
-
首先在Linux系统的/etc/init.d目录创建nginx文件,使用如下命令:
vim /etc/init.d/nginx
然后把http://wiki.nginx.org/RedHatNginxInitScript网站的内容复制到/etc/init.d/nginx中。
注意修改:
nginx='/usr/sbin/nginx'修改为nginx执行程序的路径。
NGINX_CONF_FILE=”/etc/nginx/nginx.conf” 修改成配置文件的路径。
pidfile=/var/run/nginx.pid 修改为何nginx服务启动时,配置文件中设置的pid。 ####
保存脚本文件后设置文件的执行权限:
chmod a+x /etc/init.d/nginx
然后,就可以通过该脚本对nginx服务进行管理了:
/etc/init.d/nginx start
/etc/init.d/nginx stop
- 使用chkconfig进行管理:
上面的方法完成了用脚本管理nginx服务的功能,但是还是不太方便,比如要设置nginx开机启动等。这时可以使用chkconfig来设置。
先将nginx服务加入chkconfig管理列表:
chkconfig --add /etc/init.d/nginx
加完这个之后,就可以使用service对nginx进行启动,重启等操作了。
service nginx start
service nginx stop
设置终端模式开机启动:
chkconfig nginx on