Paul Wall Asked:2020-04-19 19:49:58 +0800 CST2020-04-19 19:49:58 +0800 CST 2020-04-19 19:49:58 +0800 CST nginx多个子域 772 同一个域上有很多站点。目前,一切都是手工编写的——每个站点都在其配置中。是否可以根据/var/www/html/sitename. 如果可能的话,是否有任何示例或说明,因为我在任何地方都找不到 nginx 1 个回答 Voted Best Answer Total Pusher 2020-04-19T20:20:08+08:002020-04-19T20:20:08+08:00 对于案例sub1.site.ru=>/var/www/html/sub1.site.ru server { listen 80; server_name *.site.ru; root /var/www/html/$host; } 对于案例sub1.site.ru=>/var/www/html/sub1 server { listen 80; server_name *.site.ru; root /var/www/html/$subdomain; set $subdomain ""; if ($host ~* ^([a-z0-9-]+)\.site\.ru$) { set $subdomain $1; } } 对于任意绑定sub1.site.ru=>/var/www/html/sub1-dir使用map: map $host $sub_root_dir { sub1.site.ru sub1-dir; sub2.site.ru sub2-dir; } server { listen 80; server_name *.site.ru; root /var/www/html/$sub_root_dir; }
对于案例
sub1.site.ru
=>/var/www/html/sub1.site.ru
对于案例
sub1.site.ru
=>/var/www/html/sub1
对于任意绑定
sub1.site.ru
=>/var/www/html/sub1-dir
使用map
: