2016-01-21 99 views
1

對此設置,我使用的是DNSMasq。我遇到了Alias問題,因爲它根本不適用於動態虛擬主機。在Apache文檔中沒有這樣的東西,例如VirtualAlias具有動態別名的動態虛擬主機

我試圖設置我的新環境,就像我之前爲.dev tld所做的那樣,但我遇到了問題,因爲它需要更多配置。

這裏是全功能的.dev虛擬文檔。

<VirtualHost *:80> 
    ServerAlias *.dev 
    UseCanonicalName Off 
    VirtualDocumentRoot "/Users/nn/Sites/%1" 
</VirtualHost> 

這裏是完全對,我想設置與VirtualDocumentRoot所有項目的新的環境單個項目的功能配置。

<VirtualHost *:80> 
    DocumentRoot "/Users/nn/Sites/BaseApp/app" 
    ServerName base.app 

    Alias /scripts "/Users/nn/Sites/BaseApp/.tmp/scripts" 
    Alias /styles "/Users/nn/Sites/BaseApp/.tmp/styles" 

    <Directory "/Users/nn/Sites/BaseApp/.tmp"> 
     Options FollowSymLinks Multiviews 
     Order allow,deny 
     Allow from all 
     Require all granted 

     ErrorDocument 403 /403.php 
     ErrorDocument 404 /404.php 
     ErrorDocument 500 /500.php 
    </Directory> 
</VirtualHost> 

而這裏試圖爲所有可能使用新環境的項目重新創建它。 (即我需要幫助的)

<VirtualHost *:80> 
    ServerAlias *.app 
    UseCanonicalName Off 
    VirtualDocumentRoot "/Users/nn/Sites/%1/app" 

    Alias /scripts "/Users/nn/Sites/%1/.tmp/scripts" 
    Alias /styles "/Users/nn/Sites/%1/.tmp/styles" 

    <Directory "/Users/nn/Sites/%1/.tmp"> 
     Options FollowSymLinks Multiviews 
     Order allow,deny 
     Allow from all 
     Require all granted 

     ErrorDocument 403 /403.php 
     ErrorDocument 404 /404.php 
     ErrorDocument 500 /500.php 
    </Directory> 
</VirtualHost> 

它是可訪問的,但它搜索在app文件夾scriptsstyles,所以肯定Alias不工作。任何提示,我無能爲力?

+0

是 「全功能配置」 和 「一個我需要幫助」 的同時運行時間?什麼版本的Apache? –

+0

不在同一時間運行。服務器版本:Apache/2.4.16(Unix) – dvLden

回答

1

很長了3天的研究這個問題,沒有人給出答案之後,我想以下幾點:

  • Alias - 只爲VirtualDocumentRootDocumentRoot 不工作。
  • AliasMatch - 不適用於VirtualDocumentRoot,但 DocumentRoot只。

因此,這兩個(AliasAliasMatch)在創建動態主機時不可用。

我會更新這個答案,如果這得到解決mode_rewrite,因爲這似乎是唯一的解決方案。希望Apache創建:

  • VirtualAlias
  • VirtualAliasMatch

有一天在不遠的將來...

+0

我有同樣的問題。有沒有更新? – MaBi