首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nginx -将域映射到docroot

问nginx -将域映射到docroot
EN

Server Fault用户
提问于 2019-09-05 12:13:41
回答 1查看 489关注 0票数 0

我有几个域名和几个文档根,如下所示:

代码语言:javascript
复制
toto.exemple.com /var/www/exempleOne
titi.exemple.com /var/www/exempleTwo
[...]

基本上,我想做的是,只对所有域使用一个服务器块/ vhost文件。

为此,我尝试使用nginx地图,并执行了以下操作:

代码语言:javascript
复制
map $host $docroot{
  toto.exemple.com /var/www/exempleOne;
  titi.exemple.com /var/www/exempleTwo;
}

server {
    listen 80;
    server_name _;
        location / {
          root   $docroot;
          expires           30d;
        }
}

但是它似乎不起作用,似乎nginx正在使用默认的文档根(/etc/nginx/html/)。

EN

回答 1

Server Fault用户

发布于 2019-09-05 16:17:29

您可以尝试使用$http_host作为变量,而不是在map中使用$host。

然后,还可以在default中使用map项,将其设置为某些默认值。

通过这种方式,可以看到nginx是否为root语句计算映射。如果nginx试图从default目录中获取数据,那么它就意味着变量map正在使用的东西出了问题。

如果它仍然从nginx默认的root目录中获取,那么这意味着nginx在这里不能正确地计算map。

我还建议在root块之外设置location /。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/982011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档