在 Apache conf 指令中包含文本文件

Gre*_*der 4 virtualhost apache-2.2 apache-2.4

我需要将别名添加到服务器的主 web 指令中,我不想通过主配置文件来完成。我想知道是否有办法将另一个文件中的文本包含到指令中,例如

<VirtualHost *:80>
    DocumentRoot /var/www
    ServerName *.website.co
    Alias "/old_directory" "/var/www/old_content/old_directory/"
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

因此,如果 URL 与 old_directory 匹配,则为用户提供别名。以上工作正常,但是我想让这个动态而不是将主要规则移动到单独的 conf 文件。所以像这样:

<VirtualHost *:80>
    DocumentRoot /var/www
    ServerName *.website.co
    * include a file /var/www/alias/alias.txt
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

在 alias.txt 文件中,我会有一个别名列表

Alias "/old_directory" "/var/www/old_content/old_directory/"
Alias "/old_directory1" "/var/www/old_content/old_directory/1"
Alias "/old_directory2" "/var/www/old_content/old_directory/2"
Alias "/old_directory3" "/var/www/old_content/old_directory/3"
etc.
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我不想将主要的 virtualhost 指令移出主 conf 文件,并且当尝试使用 Include 选项在另一个文件中复制规则时,它会忽略该规则,因为我猜它已经声明了。

无论如何要包含这样的内容还是有更好的方法来处理这个问题?

HBr*_*ijn 9

无论如何要包括这样的吗?

就在这里。一个是恰当地调用的Include指令,另一个是IncludeOptional指令。