Linux安装Nginx
Linux安装Nginx
在Linux系统中安装Nginx通常涉及以下几个步骤,这里给出一个通用的安装流程,基于Yum或apt-get包管理器的方式进行安装,以及通过源码编译安装的方法。假设您的Linux系统已经联网,并且可以通过包管理器获取到必要的依赖包。
方法一:一键安装稳定版Nginx
对于基于RPM的系统(如CentOS、RHEL、Fedora):
# 使用Yum安装Nginx及其依赖包
sudo yum update -y # 先更新系统包列表
sudo yum install epel-release # 如果尚未安装EPEL仓库(对于某些系统可能需要)
sudo yum install -y nginx # 安装Nginx
# 启动Nginx服务并设置开机启动
sudo systemctl start nginx
sudo systemctl enable nginx
# 验证安装和运行状态
systemctl status nginx
对于基于Debian或Ubuntu的系统:
# 更新包列表
sudo apt-get update
# 安装Nginx和相关依赖
sudo apt-get install -y nginx
# 启动Nginx服务并设置开机启动
sudo systemctl start nginx
sudo systemctl enable nginx
# 验证安装和运行状态
systemctl status nginx
方法二:源码编译安装Nginx
1. 下载Nginx:
前往Nginx官方网站(https://nginx.org/en/download.html),找到适合您操作系统的最新稳定版源码包,比如nginx-1.24.0.tar.gz
,使用wget命令下载:
cd /usr/local/src
sudo wget https://nginx.org/download/nginx-1.24.0.tar.gz
2. 解压源码包:
sudo tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0
3. 安装构建所需的依赖包:
您需要确保系统已经安装了GCC编译器和Nginx编译所需的依赖包,如pcre、zlib和openssl的开发版本:
对于RPM系统:
sudo yum install -y gcc pcre-devel zlib-devel openssl-devel
对于Debian/Ubuntu系统:
sudo apt-get install -y build-essential libpcre3-dev zlib1g-dev libssl-dev
4. 配置、编译和安装:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-pcre
make && sudo make install
./configure更多的参数示例:
./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 \
--with-http_stub_status_module \
--with-http_ssl_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
5. 创建符号链接和配置开机启动:
#创建软连接
sudo ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
创建开机自启
1、创建nginx.service
文件
cd /etc/systemd/system
vim nginx.service
输入nginx.service文件内容 仅修改 /usr/local/nginx/sbin/nginx 这个路径即可(修改为你的nginx路径)
[Unit]
Description=nginx service
After=network.target
[Service]
Type=forking
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
2、设置文件权限
chmod 755 nginx.service
3、设置开机自启动
systemctl daemon-reload
systemctl enable nginx
4、去nginx/sbin目录先停止nginx
./nginx -s quit
5、先用此命令启停一下 看配置是否正常
# nginx启动
systemctl start nginx
# nginx停止
systemctl stop nginx
6、直接重启服务器即可(nginx就自动重启了)
reboot
7、如需停止开机启动
systemctl disable nginx.service
如果测试通过,重启Nginx使配置生效:
# 启动nginx服务
systemctl start nginx.service
systemctl start nginx
# 重新启动nginx服务
systemctl restart nginx.service
systemctl restart nginx
# 查看nginx服务当前状态
systemctl status nginx.service
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战