我已经通过stackoverflow搜索了一个类似的问题,但没有一个解决方案似乎有效 .
我正在运行WAMP并且有一个网络驱动器 T:\
,我想在Apache中使用它作为别名 . 到目前为止,我已添加:
别名/ p \ ps-file.server_location.edu \ A $ <目录/ p>订单允许,拒绝所有</ Directory>
但是,每当我尝试访问 localhost/p
时,我收到403禁止的消息,说 You don't have permission to access /p on this server.
有什么建议吗?
我已经尝试更改services.msc中的登录设置,但这会阻止apache一起启动 .
编辑:我还必须在第一次连接时输入网络驱动器的登录信息 . 我可以以某种方式给apache我的登录信息吗?
4 回答
你需要使用正斜杠而不是反斜杠,或者使用额外的backslashas将它们全部转义,并将引号中的路径封闭,如Xophmeister所述 . 例如:
要么
除非在用于运行apache服务的用户配置文件中创建映射驱动器,否则使用UNC路径是正确的 .
caltor是对的,这里很少编辑,你可以使用
<Directory "/p">
因为它有别名 . 但我讨厌在配置中编写网络驱动器,如//p...
这里还有另一个问题,在这个方法中,你不能执行exec()或批处理文件,不能取目录的信息,open_dir等不能返回结果,也就是apache无法启动作为服务 . 要解决这个问题,
首先下载http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx将zip文件解压缩到C:/ sys . 打开cmd,然后
然后出现一个新的命令行 . 一切你需要的
会询问lethea pc的用户名和密码 . 这是j:网络驱动器的简称 . 执行此操作后,在httpd.conf文件夹中,您不需要创建别名或将完整的网络映射写入Documentroot和目录
...
为什么不只是别名为T:\,如
Alias /p T:\
?否则,我的猜测是Apache没有必要的权限来访问指定的UNC(特别是,A$
位可能搞砸了,因为它是一个特殊的共享) .为了解决这个问题,您将需要:向董事会管理员授予httpd.exe文件的权限,以便在用户服务窗格的管理员窗口中验证该服务,并保留httpd.conf文件,以便
DocumentRoot“//192.168.50.2/g/htdocs”
设置主机的ip,其中apache无法识别此机器名称的文件