nginx 多个域名指向同一位置

nginx 多个域名指向同一位置

我注册了几个域名,例如 example.com、example.co.uk、example.net,我想你明白了。

目前,我正在 nginx 配置文件中创建多个服务器块,例如:

server {
    listen 80;
    server_name example.com www.example.com 
    root /var/www/example.com/html 
}

server {
    listen 80;
    server_name example.co.uk www.example.co.uk
    root /var/www/example.com/html

}

还有更多。基本上它们都指向一个文件夹中的同一个网站。

我的问题是 - 是否可以创建服务器块来实现相同的目的?比如

server {
     listen 80
     server_name example.com example.co.uk example.net // etc
     root /var/www/example.com/html 
}

提前致谢。

答案1

是的,有可能。

您可以使用“*”,甚至可以使用正则表达式,一个好的解决方案可能是:

server {
     listen 80
     server_name ~^example.com|example.co.uk|example.net$;
     root /var/www/example.com/html 
}

我需要做一些像 peopleusername.wix.com 的事情,我应该这样做:

server {
     listen 80
     server_name  *.wix.com;
     root /var/www/example.com/html 
}

从代码中我只能从请求中访问完整的 url,从 url 中提取用户名,从数据库中获取用户 ID,并将所有用户配置和用户数据放在一起以显示用户配置的主题和颜色

没有什么魔法:

相关内容