Apache不会遵循Symlink

我的开发机器上安装了LAMP服务器(Ubuntu 12.10)。 这是一个用SSD修改的T60。

服务器基地位于/ var / www。 Apache有以下configuration:

DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews SymLinksIfOwnerMatch AllowOverride all Order allow,deny allow from all </Directory> 

我目前正在开发SilverStripe CMS精选网站。 服务器的文件夹是/ var / www / sfk /。 框架和所有cms相关的function都在各自的文件夹中。 唯一需要修改的文件夹是/ var / www / sfk / mysite文件夹。 因此,我想保留我的主目录下的mysite文件夹,并将其链接到服务器文件夹。 所以这就是我所做的:

 ln -s ~/sfk/mysite/ /var/www/sfk/ sudo chgrp www-data /var/www/sfk/mysite -R 

ls告诉我以下内容:

 /var/www/sfk (exerpt) drwxr-xr-x 3 marvin www-data 4096 Nov 16 16:53 assets drwxr-xr-x 12 marvin www-data 4096 Nov 16 16:53 cms drwxr-xr-x 29 marvin www-data 4096 Nov 16 16:53 framework -rw-r--r-- 1 marvin www-data 2410 Nov 16 16:53 index.php lrwxrwxrwx 1 marvin www-data 24 Nov 20 17:45 mysite -> /home/marvin/sfk/mysite/ -rw-rw-r-- 1 marvin www-data 514 Nov 16 16:55 _ss_environment.php drwxr-xr-x 4 marvin www-data 4096 Nov 16 16:53 themes 

 ls /var/www/sfk/mysite/ drwxrwxr-x 6 marvin www-data 4096 Nov 16 00:15 code drwxrwxr-x 2 marvin www-data 4096 Nov 16 11:51 _config -rwxrwxr-x 1 marvin www-data 2685 Nov 16 15:39 _config.php drwxrwxr-x 2 marvin www-data 4096 Nov 16 00:15 css drwxrwxr-x 2 marvin www-data 4096 Nov 16 00:15 images drwxrwxr-x 2 marvin www-data 4096 Nov 16 00:15 javascript drwxrwxr-x 5 marvin www-data 4096 Nov 16 00:15 templates 

这与我的台式机上的设置完全相同。 我遇到的问题是mysite /文件夹只是无法识别。 我很感谢我得到的每一个build议。 我很沮丧,因为我一直坚持这个问题几个小时。

你确定www-data帐户能够遍历/home/marvin/sfk/mysite/每一个目录组件吗? 所以www-data必须能够访问homemarvinsfkmysite 。 您可能需要在该path的每个组件上都有o+x 。 遵循符号链接时,遵循符号链接的用户必须具有实际到达目标文件夹/文件的能力。

如果您不想授予对您的文件夹的www-data访问权限,那么您可能需要查看绑定挂载。

你的主目录和子目录有什么权限,因为它们需要Apache用户可访问,例如

 chmod 755 ~/ ~/sfk ~mysite