安装Nginx
准备工作
- 服务端放行端口
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --reload
安装Nginx
1.安装依赖
# 安装gcc环境
yum install -y gcc-c++
# 安装PCRE库,用于解析正则表达式
yum install -y pcre pcre-devel
# 安装zlib压缩和解压缩依赖
yum install -y zlib zlib-devel
# 安装SSL安全的加密的套接字协议层,用于HTTP安全传输,也就是https
yum install -y openssl openssl-devel
yum install -y ncurses-devel
2.下载源码安装包
去官网 http://nginx.org/ 下载对应的nginx包,推荐使用稳定版本,以处以1.22.1为例
# 下载源码包
curl -o nginx-1.22.1.tar.gz http://nginx.org/download/nginx-1.22.1.tar.gz
# 编译之前,先创建nginx临时目录,如果不创建,在启动nginx的过程中会报错
mkdir -p /var/temp/nginx
# 解压
tar -zxvf nginx-1.22.1.tar.gz
# 编译
cd nginx-1.22.1
# 在nginx目录,输入如下命令进行配置,目的是为了创建makefile文件
./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_ssl_module
注:\
代表在命令行中换行,用于提高可读性配置命令:
命令 | 解释 |
---|---|
–prefix | 指定nginx安装目录 |
–pid-path | 指向nginx的pid |
–lock-path | 锁定安装文件,防止被恶意算改或误操作 |
–error-log-path | 错误日志 |
–http-log-path | 访问日志 |
–with-http_gzip_static_module | 启用gzip模块,在线实时压缩输出数据流 |
–http-client-body-temp-path | 设定客户端请求的临时目录 |
–http-proxy-temp-path | 设定http代理临时目录 |
–http-fastcgi-temp-path | 设定fastcgil临时目录 |
–http-uwsgi-temp-path | 设定uwsgi临时目录 |
–http-scgi-temp-path | 设定scgi临时目录 |
–with-http_ssl_module | 启用ssl证书提供https访问 |
make编译&安装
make & make install
3.启动服务
cat >> /usr/lib/systemd/system/nginx.service << END
[Unit]
Description=Nginx Service
After=network.target
[Service]
Type=forking
ExecStartPre=/usr/bin/rm -f /var/run/nginx/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
END
systemctl daemon-reload
systemctl enable --now nginx
###
文档更新时间: 2024-04-25 16:35 作者:姚连洲