我的项目路径是/media/zarpio/40D41555D4154E92/projects/www/muhammadkhalil/public_html_ci
ntfs单独的分区(驱动器)。
我已经创建了下面给出的虚拟主机文件。
<VirtualHost *:80>
ServerName ci.muhammadkhalil.com
ServerAlias www.ci.muhammadkhalil.com
ServerAdmin [email protected]
DocumentRoot /media/zarpio/40D41555D4154E92/projects/www/muhammadkhalil/public_html_ci/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /media/zarpio/40D41555D4154E92/projects/www/muhammadkhalil/public_html_ci/public_html/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
请告诉我我的虚拟主机文件出了什么问题,如果我更改DocumentRoot /var/www/muhammadkhalil.com/public_html
它,它可以正常工作,但我需要将我的每个项目放入单独的硬盘中。
答案1
您需要正确设置所有父目录权限(至少 755)。
/var/log/apache2/error.log 中的错误条目类似于:
[Fri Jan 30 16:31:37.879239 2015] [authz_core:error] [pid 2900] [client 192.168.111.101:56597] AH01630: client denied by server configuration: /media/newhd/test_web/
应该表明您唯一的问题是您需要修改 Apache2 HTTPD 服务器的默认安全模型以允许访问文件。需要编辑文件 /etc/apache2/apache2.conf(以 sudo 身份)并添加以下行:
<Directory /media/zarpio/40D41555D4154E92/projects/www/muhammadkhalil/public_html_ci/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
此外,/var/log/apache2/error.log 中的错误条目类似于以下内容:
Forbidden, you have permission to access files on this server
表示文件系统不兼容(例如 ntfs 无法工作)或其他不兼容情况。检查权限层次结构中是否存在任何扩展权限(用加号表示)。示例(无扩展权限)权限层次结构:
drwsrwsrwt 8 root root 4096 Nov 28 19:55 /media
drwxr-xr-x 5 root root 4096 Jan 30 16:24 /media/newhd
drwxr-xr-x 2 root root 4096 Jan 30 16:26 /media/newhd/test_web
-rw-r--r-- 1 root root 1422 Jan 30 16:26 /media/newhd/test_web/index.html