Apache:如何向虚拟主机添加虚拟目录?

3 apache-2.2

我们有一个运行 Apache 的 Windows 服务器。

Apache 服务器已成功配置为使用基于名称的虚拟主机为 6 个站点提供服务。

我需要向其中一个网站添加一个虚拟目录,并让该目录的默认文档成为该网站目录结构中的特定文件(该网站使用的 CMS 会生成相当令人不快的静态 URL,这就是我们想要这样做的原因) 。

所以,我想要的是:

http://www.oursite.com/virtual_dir
Run Code Online (Sandbox Code Playgroud)

提供内容来自

http://www.oursite.com/a-page-from-the-cms.html
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚如何/在哪里添加语句来创建虚拟目录。

这是 httpd-vhosts.conf 文件中的一部分,以便您可以看到我们如何配置到目前为止正在运行的内容(IP 地址和 URL 已更改):

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName 127.0.0.1
     DocumentRoot "E:/webs/default/"
</VirtualHost>


# Main site

<VirtualHost *:80>
    ServerAdmin webmaster@oursite.com
    DocumentRoot "E:/webs/www.oursite.com/site/"
    ServerName www.oursite.com
    ErrorLog "E:/webs/www.oursite.com/logs/oursite.com-error.log"
    CustomLog "|C:/Apache/bin/rotatelogs.exe E:/webs/www.www.oursite.com/logs/oursite.com/logs/www.oursite.com/logs/oursite.com-access.%Y-%m-%d-%H_%M_%S 86400" combined
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

ska*_*man 5

尝试使用Alias指令,例如

Alias /virtual_dir /the/path/on/your/filesystem/to/a-page-from-the-cms.html
Run Code Online (Sandbox Code Playgroud)

更复杂的解决方案是使用mod_rewrite,但这可能有点矫枉过正。