目录
1.gcc
安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:
yum install gcc-c++ -y
2.PCRE
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。
yum install -y pcre pcre-devel
注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。
3.zlib
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。
yum install -y zlib zlib-devel
4.openssl
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。
yum install -y openssl openssl-devel
5.编译安装
解压:
tar -zxvf nginx-1.18.0.tar.gz
cd nginx-1.18.0
编译命令:
./configure --prefix=/usr/local/apps/nginx/nginx-1.18.0 --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-stream --with-stream_ssl_module
执行:
make
make install
创建用户:
groupadd nginx
useradd nginx -g nginx -s /sbin/nologin -M 或
useradd -s /sbin/nologin -M nginx
6.查看权限组
id nginx
7.创建logs文件夹
mkdir logs
8.启动:
进入sbin目录下
./nginx 启动;
指定配置文件启动
./nginx -c /usr/local/apps/nginx/nginx-1.18.0/conf/nginx.conf
9.查看进程:
ps aux|grep nginx
10. 将 nginx 配置为系统服务并设置开机自启
vim /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/local/apps/nginx/nginx-1.18.0/sbin/nginx -t
ExecStart=/usr/local/apps/nginx/nginx-1.18.0/sbin/nginx -c /usr/local/apps/nginx/nginx-1.18.0/conf/nginx.conf
ExecReload=/usr/local/apps/nginx/nginx-1.18.0/sbin/nginx -s reload
ExecStop=/usr/local/apps/nginx/nginx-1.18.0/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
修改配置文件nginx.conf,根据自己定义的pid生成路径修改
#pid run/nginx.pid
pid /var/run/nginx.pid
systemctl daemon-reload # 重新加载Units
systemctl enable nginx.service # 将 nginx 服务设置为开机启动
systemctl start nginx.service # 启动 nginx 服务
systemctl status nginx.service # 查看 nginx 服务状态
systemctl stop nginx.service # 停止 nginx 服务
systemctl status nginx.service # 查看 nginx 服务状态
systemctl restart nginx.service # 重启 nginx 服务
systemctl status nginx.service # 查看 nginx 服务状态
systemctl disable nginx.service # 关闭开机自启