首先安装Nginx前必须安装编译Nginx依赖的库:
yum -y install gcc-c++ yum -y install pcre pcre-devel yum -y install zlib zlib-devel yum -y install openssl openssl--devel
1:创建群组
groupadd nginx
1.1:创建一个用户,不允许登录和创建主目录
useradd -s /sbin/nologin -g nigix -M nginx
2:下载最新稳定版本Nginx
wget -C http://nginx.org/download/nginx-1.12.0.tar.gz
2.1:解压
tar zxvf nginx-1.12.0.tar.gz
2.2 编译基本能运行的nginx
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module
解释编译参数:
#指定运行权限的用户 --user=nginx #指定运行的权限用户组 --group=nginx #指定安装路径 --prefix=/usr/local/nginx #支持nginx状态查询 --with-http_stub_status_module #开启ssl支持 --with-http_ssl_module #开启GZIP功能 --with-http_gzip_static_module
2.3 编译
make
2.4 安装
make install
3:设为开机启动项
3.1 nginx直接启动的方法:
sudo /usr/local/nginx/sbin/nginx
3.2 nginx加入到systemctl启动
手动启动Nginx并不方便,所以,我们需要将Nginx添加到CentOS 7的 systemctl 中:
编辑文件:
sudo vim /usr/lib/systemd/system/nginx.service
添加下面的脚本,注意路径 !
[Unit] Description=nginx - high performance web server Documentation=http://nginx.org/en/docs/ After=network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target
systemctl的一些使用方法:
systemctl is-enabled servicename.service #查询服务是否开机启动 systemctl enable xxx.service #开机运行服务 systemctl disable xxx.service #取消开机运行 systemctl start xxx.service #启动服务 systemctl stop xxx.service #停止服务 systemctl restart xxx.service #重启服务 systemctl reload xxx.service #重新加载服务配置文件 systemctl status xxx.service #查询服务运行状态 systemctl --failed #显示启动失败的服务
因此,CentOS 7中操作nginx的方法有:
systemctl is-enabled nginx.service #查询nginx是否开机启动 systemctl enable nginx.service #开机运行nginx systemctl disable nginx.service #取消开机运行nginx systemctl start nginx.service #启动nginx systemctl stop nginx.service #停止nginx systemctl restart nginx.service #重启nginx systemctl reload nginx.service #重新加载nginx配置文件 systemctl status nginx.service #查询nginx运行状态 systemctl --failed #显示启动失败的服务
更多参考:
文章的脚注信息由WordPress的wp-posturl插件自动生成