yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel pcre pcre-devel
cd /data
wget http://nginx.org/download/nginx-1.22.0.tar.gz
tar -xvf nginx-1.22.0.tar.gz -C /usr/local
cd /usr/local/nginx-1.22.0
./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 \
--with-http_gzip_static_module \
--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_stub_status_module \
--with-http_ssl_module \
--with-file-aio \
--with-http_realip_module
mkdir /var/temp/nginx -p
make && make install
cd /usr/local/nginx/sbin
// 启动nginx
./nginx
// 关闭nginx
./nginx -s stop
// 刷新配置文件
./nginx -s reload
设置开机自启动
下载官方脚本 https://www.nginx.com/resources/wiki/start/topics/examples/redhatnginxinit
修改两个地方
nginx="/usr/local/nginx/sbin/nginx"
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
保存到文件 /etc/init.d/nginx
修改权限
chmod a+x /etc/init.d/nginx
至此就可以通过下面指令控制启动停止
/etc/init.d/nginx start
/etc/init.d/nginx stop
加入到服务管理
chkconfig --add /etc/init.d/nginx
加完这个之后,就可以使用service对nginx进行启动,重启等操作了。
service nginx start
service nginx stop
service nginx restart
最后设置开机自动启动
chkconfig nginx on
如果出现报错:
nginx: [emerg] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory)
解决方式:
修改 nginx.conf,设置 pid logs/nginx.pid; 然后创建目录 /usr/local/nginx/logs
最后,修改 nginx.conf
user www;
worker_processes auto;
参考:https://www.cnblogs.com/lywJ/p/10710361.html