Ubuntu系统下安装和配置Nginx的详细步骤

Ubuntu系统下安装和配置Nginx的详细步骤
小妖以下是基于知识库信息整理的Ubuntu系统下安装和配置Nginx的详细步骤:
一、环境准备
更新系统包
打开终端,执行以下命令更新系统包列表和已安装的软件:1
2sudo apt update
sudo apt upgrade -y
二、安装Nginx
方法1:通过Ubuntu默认仓库安装(推荐)
安装Nginx
直接使用apt命令安装:1
sudo apt install nginx -y
启动并启用Nginx服务
启动Nginx服务:
1
sudo systemctl start nginx
设置开机自启:
1
sudo systemctl enable nginx
验证安装
检查Nginx服务状态:
1
sudo systemctl status nginx
如果显示active (running),说明安装成功。
查看Nginx版本:
1
nginx -v
方法2:通过Nginx官方仓库安装(获取最新版本)
如果需要安装Nginx最新版本,可以添加官方仓库:
导入Nginx官方GPG密钥:
1
curl https://nginx.org/keys/nginx_signing.key | sudo gpg --dearmor -o /usr/share/keyrings/nginx-archive-keyring.gpg
添加Nginx仓库到源列表:
1
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/ubuntu $(lsb_release -cs) nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
设置优先级(避免与默认仓库冲突) :
1
echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900" | sudo tee /etc/apt/preferences.d/99nginx
更新并安装Nginx:
1
2sudo apt update
sudo apt install nginx -y
三、配置防火墙
安装并启用防火墙(如未安装)
Ubuntu默认使用ufw防火墙:1
sudo ufw enable
开放Nginx所需端口
允许HTTP(80端口)和HTTPS(443端口):1
sudo ufw allow 'Nginx Full' # 一键开放80和443端口
或手动开放:
1
2sudo ufw allow 80/tcp
sudo ufw allow 443/tcp验证防火墙规则:
1
sudo ufw status numbered
四、验证Nginx服务
通过浏览器访问
在浏览器中输入服务器IP地址(如http://your_server_ip),若看到Nginx默认欢迎页面,则安装成功。通过命令行测试:
1
curl http://localhost
五、配置Nginx(可选)
1. 创建虚拟主机(Server Block)
创建网站根目录:
1
2sudo mkdir -p /var/www/your_domain/html
sudo chown -R $USER:$USER /var/www/your_domain/html创建示例网页:
1
echo "<h1>Welcome to Your Domain!</h1>" | sudo tee /var/www/your_domain/html/index.html
配置Nginx服务器块:
复制默认配置文件作为模板:
1
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/your_domain
编辑配置文件:
1
sudo nano /etc/nginx/sites-available/your_domain
修改以下内容:
1
2
3
4
5
6
7
8
9
10
11server {
listen 80;
server_name your_domain www.your_domain;
root /var/www/your_domain/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
启用配置:
1
sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
测试配置并重启Nginx:
1
2sudo nginx -t
sudo systemctl restart nginx
2. 启用SSL/TLS(HTTPS)
使用Let’s Encrypt免费证书:
安装Certbot工具:
1
sudo apt install certbot python3-certbot-nginx -y
获取并安装证书:
1
sudo certbot --nginx -d your_domain -d www.your_domain
按提示完成配置,选择自动更新证书。
六、常见问题排查
服务无法启动:
检查Nginx配置是否有语法错误:
1
sudo nginx -t
查看错误日志:
1
sudo tail -f /var/log/nginx/error.log
端口被占用:
检查80端口占用情况:
1
sudo netstat -tulnp | grep :80
防火墙未开放:
确保已开放80和443端口:
1
sudo ufw status
七、其他注意事项
管理Nginx服务:
1
2
3
4
5
6
7
8# 重启服务
sudo systemctl restart nginx
# 停止服务
sudo systemctl stop nginx
# 平滑重启(不中断连接)
sudo nginx -s reload查看Nginx日志:
- 访问日志:/var/log/nginx/access.log
- 错误日志:/var/log/nginx/error.log
通过以上步骤,您可以在Ubuntu系统上成功安装并配置Nginx,满足基本的Web服务需求。如需更高级配置(如反向代理、负载均衡等),可参考Nginx官方文档或进一步调整配置文件。
评论
匿名评论隐私政策










