下面给你一个从零开始的 Linux + Nginx 配置指南,涵盖安装、基础配置、常见场景,适合新手也适合实战。
sudo apt update
sudo apt install nginx -y
sudo yum install epel-release -y
sudo yum install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
浏览器访问服务器 IP,看到 Welcome to nginx 即成功。
/etc/nginx/
├── nginx.conf # 主配置文件
├── conf.d/ # 自定义配置(推荐)
└── sites-enabled/ # 站点配置(Ubuntu)
✅ 推荐做法:
每个网站一个配置文件,放在 conf.d/
example.comsudo vim /etc/nginx/conf.d/example.conf
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
创建目录:
sudo mkdir -p /var/www/example
echo "Hello Nginx" | sudo tee /var/www/example/index.html
测试并重载:
sudo nginx -t
sudo systemctl reload nginx
server {
listen 80;
server_name api.example.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d example.com -d www.example.com
Certbot 会自动修改 Nginx 配置。
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/example.crt;
ssl_certificate_key /etc/nginx/ssl/example.key;
location / {
root /var/www/example;
index index.html;
}
}
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}
server_tokens off;
gzip on;
gzip_types text/css application/javascript image/svg+xml;
location /admin {
allow 192.168.1.0/24;
deny all;
}
index 文件不存在proxy_pass 地址错误tail -f /var/log/nginx/error.log
如果你愿意,我可以直接帮你写配置文件,只需要告诉我:
我可以给你可直接复制用的完整配置。