我刚刚设置了一个完全运行LAMP的Cent OS 6 VPS,直到我启用了虚拟主机。 它总是返回403 Forbidden错误。
我将/etc/httpd/conf/httpd.conf更新为以下设置:
<Directory />
# Options Indexes FollowSymLinks MultiViews Includes ExecCGI
Options FollowSymLinks
AllowOverride All
# Order deny,allow
Order allow,deny
Allow from all
# Deny from all
</Directory>
<Directory "/var/www/html">
Options Indexes FollowSymLinks MultiViews
#AllowOverride None
AllowOverride All
Order allow,deny
Allow from all
</Directory>
NameVirtualHost *:80
我创建了/etc/httpd/conf.d/vhosts.conf,它由/etc/httpd/conf/httpd.conf加载。 (我用“mydomain”替换了我的真实域名和用户名)
<VirtualHost *:80>
ServerAdmin webmaster@mydomain
DocumentRoot /home/mydomain/htdocs
<Directory /home/mydomain/htdocs>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ServerName mydomain
ServerAlias mydomain
ErrorLog /home/mydomain/logs/error.log
# CustomLog /home/mydomain/logs/access.log common
</VirtualHost>
我更改了/ var / www / html和/ home / mydomain / htdocs的所有者和权限。
drwxr-xr-x 3 apache apache 4096 Aug 15 14:23 html
drwxr-xr-x 2 apache apache 4096 Aug 18 10:18 htdocs
drwxr-xr-x 2 apache apache 4096 Aug 18 10:37 logs
但现在我无法通过IP地址访问虚拟主机甚至根文件(/ var / www / html)。如果我关闭(删除)虚拟主机,那么我可以访问/ var / www / html中的页面。
任何人都可以帮助我吗?
非常感谢。
答案 0 :(得分:2)
如果它是403 Forbidden
那么可能是它的权限错误,所以请确保以递归方式应用权限。在终端
sudo chmod 755 -R /home/mydomain/htdocs
在你的conf中尝试这个
<VirtualHost *:80>
DocumentRoot "/path/to/your/site"
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
答案 1 :(得分:0)
我刚刚通过将/ home / mydomain /目录的权限更改为755来解决了这个问题。
感谢Akar的帮助。他确实提到了权限。