【发布时间】:2015-08-22 15:21:54
【问题描述】:
我有一个在 Apache 上运行的 Web 应用程序,其中虚拟主机文件配置为将请求路由到子域到特定文件夹。不必每次创建子域时都修改主机文件,这允许我将 URL 动态路由到相关文件夹(如果文件夹不存在,则使用包罗万象)-
<VirtualHost *:8080>
ServerName localhost.com
ServerAlias *.localhost.com
VirtualDocumentRoot "/var/www/clients/%1"
ErrorLog "logs\errors.log"
<directory "/var/www/clients/%1">
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Deny from all
Allow from all
</directory>
</VirtualHost>
我正在尝试将上述内容转换为 nginx,但找不到正确的逻辑来从 URL 中提取子域,然后在配置文件中设置 root 变量。
谁能帮我为 nginx 编写 server {} 块,如果 root 路径不存在,还要加上一个 catch-all 块?
【问题讨论】:
-
server { server_name ~^(.*)\.localhost\.com$ ; root var/www/clients/$1; }
标签: apache dynamic nginx vhosts