root@debian:~# cat /etc/systemd/system/nginx.service
[Unit]
Description=Nginx Service
Documentation="http://nginx.org/en/docs/"
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
LimitNOFILE=200000
[Install]
WantedBy=multi-user.target
1. 更新系统软件包并安装必要的构建工具和依赖项:sudo apt update sudo apt upgrade sudo apt install build-essential zlib1g-dev libpcre3-dev libssl-dev bash2. 下载 Nginx 源码包:wget http://nginx.org/download/nginx-x.y.z.tar.gz # 替换 x.y.z 为你要安装的 Nginx 版本号 tar zxf nginx-x.y.z.tar.gz cd nginx-x.y.z bash3. 配置 Nginx:./configure \ --prefix=/usr/local/nginx \ --user=www-data \ --group=www-data \ --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 \ --add-module=path/to/optional/module # 如果你有额外模块需要编译进去
# 注意替换 `path/to/optional/module` 为你实际的第三方模块路径 bash4. 编译和安装 Nginx:make sudo make install bash5. 创建系统启动所需的链接和服务文件(可选,根据你的启动方式):# 创建系统服务文件 sudo nano /etc/systemd/system/nginx.service
# 在文件中填入类似以下内容: [Unit] Description=A high performance web server and a reverse proxy server After=network.target
[Service] ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true
[Install] WantedBy=multi-user.target
or
[Unit]
Description=Nginx Service
Documentation="http://nginx.org/en/docs/"
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
LimitNOFILE=200000
[Install]
WantedBy=multi-user.target
# 保存退出,加载服务并启动 Nginx sudo systemctl daemon-reload sudo systemctl enable nginx sudo systemctl start nginx
# 检查服务状态 sudo systemctl status nginx bash注意事项:•请确保你在配置 Nginx 时包含了所有你所需要的模块,比如 SSL、HTTP2、PHP-FPM 等。•/usr/local/nginx 是 Nginx 的安装路径,你可以根据需要更改。•用户名 www-data 在 Debian 上通常是 Web 服务使用的默认用户和组,可以根据实际情况更改。•最新版 Nginx 的配置选项可能有所不同,请查阅 Nginx 官方文档以获得最新配置指南。记得根据实际情况调整命令中的路径和模块选项。同时,请始终关注 Nginx 官方发布的安全更新,并适时更新你的 Nginx 服务器。
来源:https://www.cnblogs.com/jason-zhao/p/18065903 |