在 Nginx 中,您可以通过以下几种方式实现一个站点配置多个域名:
server {
listen 80;
server_name example.com www.example.com example.net www.example.net;
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 80;
server_name *.example.com;
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 80;
server_name ~^(www\.)?example\.(com|net|org)$;
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 80;
server_name example.net;
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 443 ssl;
server_name example.com www.example.com example.net www.example.net;
ssl_certificate /path/to/your/certificate.crt;
ssl_certificate_key /path/to/your/private.key;
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 80;
server_name example.com www.example.com example.net www.example.net;
return 301 https://$host$request_uri;
}
nginx -t
测试配置是否正确systemctl reload nginx
或 service nginx reload
重新加载配置以上方法可以根据您的具体需求选择使用,第一种方法是最简单直接的解决方案。