操作系统是windows xp,apache是apache 2.2。
在我的 Windows XP 上,我有一个映射驱动程序,路径是 \dev3,在 dev3 下我有一个文件夹 www\project。
现在我已经将以下虚拟主机添加到我的本地 apache conf 文件中。
服务器名称 project.localhost
DocumentRoot "\\dev3\www\project"
DirectoryIndex index.php
<Directory "\\dev3\www\project">
AllowOverride All
Allow from all
Options +FollowSymLinks
</Directory>
重新启动 apache 服务器后,apache 给了我以下警告:警告:DocumentRoot [C:/dev3/www/project] 不存在。
我的问题是如何让 apache 识别我的映射驱动器
答案1
Apache 以 NT AUTHORITY\SYSTEM 启动,因此您必须按照以下说明映射服务的驱动器https://stackoverflow.com/a/4763324
答案2
我找到了一个解决方案,如果我从命令行运行 apache,它就可以工作。但从服务运行则不行。
答案3
服务不能只访问在您的用户名下映射的映射网络驱动器。也许您可以将 apache 服务设置为在您的用户帐户下运行,或者以某种方式设置本地服务帐户来访问映射驱动器。
答案4
您可以使用 Mark Russinovich Sysinternals - www.sysinternals.com 提供的以下命令实用程序,名为 junction
连接点 c:\my_symlink“U:\networkpath\dir”
您现在可以将 DocumentRoot 指令设置为 C:\my_symlink
重新启动 Apache 就可以了。
但是,这要求您使用 net use 命令(可能带有持久性选项)正确映射网络驱动器