我安装了 ubuntu server 12.04,并使用 guestadditions 将 windows 7 文件夹用作共享文件夹。我可以看到该文件夹为 sf__projects,因此我将其符号链接到 var/www/_projects
但问题是所有文件夹都分配了 root 用户。我尝试了不同博客中的许多选项,但都不起作用。
这是我在 Apache 错误日志中看到的内容:
[Tue Jul 17 17:43:27 2012] [crit] [client 192.168.0.108] (13)Permission denied: /var/www/_projects/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable
文件夹截图:[ http://www.diigo.com/item/image/80d3/d3ha
]
在 /etc/hosts 中:
127.0.0.1 bab.local www.bab.local
/etc/apache2/站点可用/bab
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/_projects/bab/master"
ServerName bab.local
ServerAlias www.bab.local
ErrorLog /var/www/_projects/bab/master/var/logs/apache_error.log
CustomLog /var/www/_projects/bab/master/var/logs/access.log combined
<Directory /var/www/_projects/bab/master/>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
我的 Windows 主机文件:
192.168.0.79 bab.local www.bab.local
当我尝试通过浏览器访问网站时,我得到:
您无权访问此服务器上的/。
我完全不确定它为什么尝试访问:var/www/_projects/.htaccess
注意:192.168.0.79 是 ubuntu 的 ip 192.168.0.108 是 windows 的 ip
有人遇到过这个问题并解决过吗?
答案1
- 它正在尝试读取
.htaccess
文件,因为它在那里。您的 httpd(apache)设置为读取AccessFileName
指令中设置的文件名,并且您有AllowOverride All
。如果您不需要文件中的设置,.htaccess
那么您可以删除该文件。 - 它无法读取
.htaccess
文件,因为只有root
和vboxsf
可以读取/写入它。由于您使用的是 Ubuntu 12.04,httpd
因此您的系统可能以 运行。请检查它以哪种方式运行的 配置。您可以在您的 VirtualBox 共享文件夹中添加一个条目,以便在安装时设置(和)。看起来您不能依赖 fstab 在启动时成功安装卷,因为显然,fstab 在加载 sf (sharedfolder) 模块之前被读取,因此如果您希望它自动安装,则应该使用中的命令(www-data
httpd
User
/etc/fstab
uid
gid
mount
/etc/rc.local
https://forums.virtualbox.org/viewtopic.php?f=3&t=15868)。 - 与‘/’相同;仅
root
可vboxsf
读取。