2017-05-28 46 views
1

其中*對於每個客戶端(例如apple.example.com,pearl.example.com)而言都不相同。 這些全部應該路由到相同的IP和相同的目錄。 如何修改hosts文件和httpd配置?如何創建像* .example.com這樣的動態虛擬主機?

更詳細的例子:

<VirtualHost 111.22.33.44> 
    ServerName     customer-1.example.com 
    DocumentRoot  "/www/hosts/example.com/docs" 
    ScriptAlias "/cgi-bin/" "/www/hosts/example.com/cgi-bin" 
</VirtualHost> 

<VirtualHost 111.22.33.44> 
    ServerName     customer-2.example.com 
    DocumentRoot  "/www/hosts/example.com/docs" 
    ScriptAlias "/cgi-bin/" "/www/hosts/example.com/cgi-bin" 
</VirtualHost> 

<VirtualHost 111.22.33.44> 
    ServerName     customer-N.example.com 
    DocumentRoot  "/www/hosts/example.com/docs" 
    ScriptAlias "/cgi-bin/" "/www/hosts/example.com/cgi-bin" 
</VirtualHost> 

謝謝!

回答

0

可以在ServerAlias像這樣利用明星:

<VirtualHost 111.22.33.44> 
    ServerName  customer-1.example.com 
    ServerAlias  *.example.com 
    DocumentRoot "/www/hosts/example.com/docs" 
    ScriptAlias  "/cgi-bin/" "/www/hosts/example.com/cgi-bin" 
</VirtualHost> 
+0

所以我必須添加所有別名主機文件或者我也可以使用* .example.com的有(不似乎以這種方式工作。)? –

+0

據我所知,你需要爲一個目錄提供所有子域名,所以你可以使用** ServerAlias **。是嗎? –

+0

通過安裝這個:亞克力DNS代理通配符開始在主機文件中工作,你給的服務器配置是好的,並工作。 :) –