2016-01-21 102 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