昨天,我有一大堆网站在本地运行没有问题。今天,没有什么打开,我有一个充满了这个日志:
Symbolic link not allowed or link target not accessible: /var/www
我不知道我做了什么(我没有以任何方式打开/更改我的httpd.conf文件),但显然这是件坏事。我运行虚拟主机,根目录位于~/Developer/www
。为了在具有不同主目录的多台Mac上共享配置文件,我创建了一个指向/var/www
的符号链接~/Developer/www
。
所有virtualhost配置文件都将其DocumentRoot
指向/var/www/project_directory
,其自己的根目录具有FollowSymLinks
选项:
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost.local localhost.dev
DocumentRoot /var/www/_localhost
<Directory /var/www/_localhost>
Options FollowSymLinks Indexes
AllowOverride None
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
我的主httpd.conf
个文件同样为FollowSymLinks
启用了/
选项:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
我知道我可以做些什么来阻止Apache理解符号链接,或者更好的是,我能做些什么来让它重回正轨?
感谢。
更新
我应该补充一点,“堆栈”中的所有目录都可以由所有用户执行,这是OS X Lion上的本机Apache安装。
答案 0 :(得分:5)
我想我假设我不应该这样做。我已经验证了每个相关的权限,除了显然重要的权限。 Apache在我的顶级主目录上没有执行权限。我检查,重新检查并对其下的所有内容进行三重检查,但从未更改过该目录中的任何内容,我只是没想到它是问题所在。