具有动态别名的动态虚拟主机

Posted

技术标签:

【中文标题】具有动态别名的动态虚拟主机【英文标题】:Dynamic Virtual Host with Dynamic Alias 【发布时间】:2016-04-27 20:47:53 【问题描述】:

我正在使用 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 肯定不起作用。有什么提示,我一无所知?

【问题讨论】:

“功能齐全的配置”和“我需要帮助的配置”是否同时运行?什么版本的apache? 没有同时运行。服务器版本:Apache/2.4.16 (Unix) 【参考方案1】:

经过 3 天的长期研究和这个没有人回答的问题,我想到了以下几点:

Alias - 不适用于 VirtualDocumentRootDocumentRoot 仅限。 AliasMatch - 不适用于 VirtualDocumentRoot 但 仅限DocumentRoot

因此,这两个(AliasAliasMatch)在创建动态主机时不可用。

如果通过mode_rewrite 以某种方式解决此问题,我将更新此答案,因为这似乎是唯一的解决方案。希望Apache 创建:

VirtualAlias VirtualAliasMatch

不久的将来……

【讨论】:

您找到解决方案了吗? 不。一直没弄明白。 我在同一个地方,一直在颠倒网络。找不到解决办法。

以上是关于具有动态别名的动态虚拟主机的主要内容,如果未能解决你的问题,请参考以下文章

具有动态高度的反应虚拟化无限滚动问题

如何在 xampp 中设置具有相同父服务器别名或名称的虚拟主机

在 Ansible 动态清单中,如何按标签过滤主机?

Centos7修改主机名

DHCP协议

centos 7 修改主机名的方法