我有几个域指向同一台服务器,例如:
server_name www.domain1.dev www.domain2.dev www.domain3.dev
大多数配置都是相同的,它们指向相同的php文件,但我为每个域都有一个不同的资源文件夹:
/www.domain1.dev/assets/
/www.domain2.dev/assets/
/www.domain3.dev/assets/
这就是我想将http://www.domain1.dev/assets/*
等请求重写为http://www.domain1.dev/www.domain1.dev/assets/*
尝试使用location - return
,但未找到如何获取当前域名。
答案 0 :(得分:1)
当前请求的域名可以在$host
或$http_host
中。有关差异,请参阅this document。
例如:
location ^~ /assets {
root /path/to/root/$host;
}
或者:
location ^~ /assets {
return 301 /$host$request_uri;
}
另一种方法是将您的域名分隔为单独的server
块,并使用include
语句来提取公共内容。