Nginx作为一款高性能的Web服务器,可以通过虚拟主机配置来支持多个域名。以下是详细的配置方法:
创建配置文件:
/etc/nginx/conf.d/
目录下example.com.conf
基础配置模板:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 80;
server_name domain1.com;
root /var/www/domain1;
# 其他配置...
}
server {
listen 80;
server_name domain2.com;
root /var/www/domain2;
# 其他配置...
}
server {
listen 80;
server_name *.example.com;
root /var/www/wildcard;
# 其他配置...
}
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
root /var/www/example.com;
index index.html;
# 其他SSL优化配置...
}
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
server {
listen 80;
server_name example.com;
return 301 http://www.example.com$request_uri;
}
sudo nginx -t
sudo systemctl reload nginx
# 或
sudo service nginx reload
配置不生效:
权限问题:
SSL证书问题:
日志查看:
tail -f /var/log/nginx/error.log
通过以上配置,您可以灵活地管理Nginx上的多个域名,并根据需要设置重定向、HTTPS等高级功能。