2015-05-11 29 views
1

如何獲取由域名的兩個最後部分組成的目錄名稱。或者用點?mod_vhost_alias和VirtualDocumentRoot:如何添加倒數第二部分和最後部分?

例如,我有個域any.ms,我希望的動態域foo.any.ms和域bar.any.ms也指向/無功/網絡的/ dev /any.ms/public目錄。或域any.lorem.ipsum.ms指向目錄/var/www/dev/ipsum.ms/public

ms.conf現在(不工作,Apache將無法啓動):

<VirtualHost *:80> 
    ServerAlias *.ms 
    VirtualDocumentRoot /var/www/dev/%-2%.%-1/public 
    UseCanonicalName Off 
    <Directory "/var/www/dev"> 
     Options FollowSymLinks 
     AllowOverride All 
     Order allow,deny 
     Allow from all 
     Require all granted 
    </Directory> 
</VirtualHost> 

我使用文檔http://httpd.apache.org/docs/2.4/mod/mod_vhost_alias.html,但我不能插入點寫/%-2.%- 1//%2%。%-1/,/%2 \.%-1/

回答

1

我剛剛找到了解決辦法:

如果您希望包括。 (點)在VirtualDocumentRoot指令字符,但它有一個指令%崩潰,則可以解決該問題通過以下方式:

VirtualDocumentRoot /usr/local/apache/vhosts/%2.0.%3.0

工作的解決方案:

<VirtualHost *:80> 
    ServerAlias *.ms 
    VirtualDocumentRoot /var/www/dev/%-2.0.%-1.0/public 
    UseCanonicalName Off 
    <Directory "/var/www/dev"> 
     Options FollowSymLinks 
     AllowOverride All 
     Order allow,deny 
     Allow from all 
     Require all granted 
    </Directory> 
</VirtualHost> 
+0

感謝的是,幫我了。但是逃離這個點也適用於我。例如, 'VirtualDocumentRoot「/var/www/dev/%1\.example.com」' – alpham8

相關問題