windows上bash的符号链接:apache试图打开一个不存在的.htaccess

时间:2016-12-16 06:03:37

标签: apache symlink windows-subsystem-for-linux

我尝试使用符号链接的php项目(它是在linux上开发的) 我在Windows上使用 bash on windows 又名 bash on ubuntu on windows 又名 windows subsystem for linux 作为开发服务器。

当apache尝试访问符号链接中的文件时,它会失败 例如当我尝试打开/var/www/website/symlink/index.html时,它返回403:

[core:error] [pid 742] AH00554: Access to file /var/www/website/symlink/.htaccess denied by server: not a regular file

我不知道为什么但似乎apache试图打开一个不存在的.htaccess文件,当然也失败了。
(符号链接指出虚拟主机根目录的范围)

一切都是777 我可以从命令行成功访问/var/www/website/symlink/index.html 我删除符号链接并复制其目标目录时,我可以成功访问index.html文件 我试图删除符号链接并重新创建它们,它不会改变任何内容。
我曾尝试创建/var/www/website/symlink/.htaccess但它并没有改变任何东西。

听起来像是一个错误或一个糟糕的apache配置还是其他什么?

1 个答案:

答案 0 :(得分:0)

此问题与此错误有关:https://github.com/Microsoft/BashOnWindows/issues/650

我通过删除符号链接并重新创建它们而不用斜杠来完成所有工作。

似乎在带有斜杠的符号链接中,每个目录和每个文件都存在(只需尝试% python Server.py Socket Created... Socket bound to INADDR_ANY with port 2609... Socket listening for connections... Waiting for client to connect... Connection From('192.168.43.7', 39100) accepted rec = pppppppppppppppppp lenght is 18 Receiving Data... Data received... lenght is 0 Client socket closed... Server Socket closed... 例如)
这解释了apache发现了一个不存在的.htaccess文件,并且拼命想要阅读它。

我想知道这个错误何时会被修复......