nginx news 进入nginx官方网站,download去下载一个源码进行编译,本课程是以nginx1.18.0版本;系统选择的是centos7版本进行演示;
安装好的系统我们会进行许多的常规设置
1.关闭防火墙
systemctl stop firewalld; #关闭防火墙
systemctl disable firewalld #开机禁止启动防火墙
2.禁用selinux
vim /etc/selinux/config
SELINUX=disabled
3.配置yum,epel源
vim /etc/yum.repos.d/base.repo
[base]
name=base
baseurl=file:///mnt
gpgcheck=0
enabled=1
vim /etc/yum.repos.d/epel.repo
[epel]
name=epel
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
gpgcheck=0
enabled=1
4.创建系统账户nginx并下载依赖包安装
useradd -r -s /sbin/nologin nginx
yum install pcre-devel openssl-devel zlib-devel gcc
cd /usr/local/src
5.把下载好的nginx复制到这个文件夹解压包
tar xvf nginx-1.18.0.tar.gz
cd nginx-1.18.0/ #进入文件夹
./configure --help 查看帮助需要编译哪些模块
6.在下以常规的配置跟模块进行了一场史无前例的编译
./configure --prefix=/apps/nginx --user=nginx --group=nginx
--with-http_ssl_module --with-http_v2_module --with-http_realip_module
--with-http_stub_status_module --with-http_gzip_static_module
--with-pcre --with-pcre --with-stream --with-stream_ssl_module
--with-stream_realip_module
make -j 2 && make install #编译安装
ln -s /apps/nginx/sbin/nginx /usr/sbin/ #创建个软连接到执行目录。这样就可以直接使用nginx命令而不带路径了;
7.设置开机自启动
vim /etc/rc.d/rc.local #放这个目录centos7 每次开机都会执行这个命令
/usr/sbin/nginx
chmod +x /etc/rc.d/rc.local #默认centos7这个目录是不带执行权限的,所以要给它一个执行权限
8.也可以使用服务器的方式对nginx进行启动和关闭;从yum安装的nginx里面把服务脚本拷贝搞来修改如下:
vim /lib/systemd/system/nginx.service
[Unit]
Description=The nginx HTTP and reverse proxy server
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/apps/nginx/logs/nginx.pid
# Nginx will fail to start if /run/nginx.pid already exists but has the wrong
# SELinux context. This might happen when running `nginx -t` from the cmdline.
# https://bugzilla.redhat.com/show_bug.cgi?id=1268621
ExecStartPre=/usr/bin/rm -f /apps/nginx/logs/nginx.pid
ExecStartPre=/apps/nginx/sbin/nginx -t
ExecStart=/apps/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
KillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=process
PrivateTmp=true
[Install]
WantedBy=multi-user.target
9.用服务的模式起停服务
systemctl start nginx 启动服务
systemctl enable nginx 设置开机自启动



