apache的httpd.conf DocumentRoot - >可移动媒体

时间:2015-03-22 03:37:56

标签: apache

我正在Windows上设置Apache的自定义便携版本。从头开始构建的XAMPP。 所以它是便携式的。启动httpd时,其中一个VirtualHost文件夹可能当时不可用(可移动设备)

<VirtualHost  127.0.0.1:8081>
  ServerName  myserver
  DocumentRoot "F:/PROJECT1"
</VirtualHost>

因此 httpd 无法启动,因为缺少DocumentRoot:

DocumentRoot must be a directory

有没有办法忽略丢失的目录(以后可用)?

1 个答案:

答案 0 :(得分:1)

我有同样的情况,我写了自己的bat文件来运行服务器(Apache)。我没有找到更好的解决方案。

此代码定义了一些变量 - Project1。

StartServer.bat

set params=
if exist some_path\project1 (
    set params=%params%" -D Project1"
)
"apache_path/bin/httpd.exe%params%"

当你描述虚拟主机时,你可以放一些逻辑取决于这个变量:

<IfDefine Project1>
    <VirtualHost 127.0.0.1:8081>
        ...
    </VirtualHost>
</IfDefine>