nginx的编译安装
侧边栏壁纸
  • 累计撰写 31 篇文章
  • 累计收到 0 条评论

nginx的编译安装

admin
2024-07-13 / 0 评论 / 19 阅读 / 正在检测是否收录...

nginx的编译安装

1、安装必要的依赖

apt upgrade
apt install build-essential libpcre3 libpcre3-dev zlib1g-dev openssl libssl-dev -y

2、前往官网下载你需要的版本并解压

wget http://nginx.org/download/nginx-1.26.1.tar.gz
tar -xvzf nginx-1.26.1.tar.gz

3、编译安装

cd nginx-1.26.1
./configure \
--prefix=/etc/nginx \
--user=www \
--group=www \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-file-aio \
--with-threads \
--with-compat \
--with-http_sub_module
make && make install

4、创建nginx使用的用户及用户组

groupadd www
useradd -g www -s /sbin/nologin www

5、验证是否安装成功

/etc/nginx/sbin/nginx -v

如果出现类似nginx version: nginx/1.26.1的提示,说明已经安装成功

6、创建软连接

ln -s /etc/nginx/sbin/nginx /usr/local/bin/nginx

7、设置开机启动

cat >/etc/systemd/system/nginx.service <<EOF
[Unit]
Description=Nginx Service
Documentation="http://nginx.org/en/docs/"
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/etc/nginx/nginx.pid
ExecStartPre=/etc/nginx/sbin/nginx -t
ExecStart=/etc/nginx/sbin/nginx
ExecReload=/etc/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
LimitNOFILE=200000
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable nginx
systemctl start nginx
systemctl status nginx

下面解释一下configure中各项参数的作用

  1. --prefix=/etc/nginx

    • 设置Nginx的安装目录。所有Nginx的文件将会安装到这个目录中,包括可执行文件、配置文件和日志文件。
  2. --user=www

    • 指定Nginx进程运行的用户。www通常是Web服务器进程使用的用户,确保Nginx进程不会以root用户身份运行,从而提高安全性。
  3. --group=www

    • 指定Nginx进程运行的用户组。`www通常是Web服务器进程使用的组。
  4. --with-http_ssl_module

    • 启用HTTP SSL模块,用于支持HTTPS协议。该模块允许Nginx处理SSL/TLS加密。
  5. --with-http_v2_module

    • 启用HTTP/2模块,使Nginx支持HTTP/2协议。HTTP/2提供了更高效的传输性能和并发能力。
  6. --with-http_realip_module

    • 启用HTTP Real IP模块,该模块可以改变客户端IP地址为代理服务器前面的真实IP地址。对于使用反向代理的场景很有用。
  7. --with-http_gzip_static_module

    • 启用HTTP Gzip Static模块,使Nginx可以直接发送预压缩的gzip文件,减少CPU的开销和提高传输效率。
  8. --with-http_stub_status_module

    • 启用HTTP Stub Status模块,该模块提供简洁的Nginx状态信息,包括活动连接数、请求数等,有助于监控Nginx的运行状态。
  9. --with-file-aio

    • 启用文件异步I/O支持,能提高Nginx在处理大量并发文件请求时的性能。
  10. --with-threads

    • 启用线程池支持,可以让Nginx在处理请求时使用线程,从而提高性能和响应速度,尤其是对文件I/O操作。
  11. --with-compat

    • 启用兼容模式,以便Nginx可以加载与当前版本不完全匹配的动态模块。这在升级Nginx时特别有用,可以减少因模块不兼容导致的问题。
  12. --with-http_sub_module

    • 允许Nginx对响应内容进行替换
0

评论

博主关闭了所有页面的评论