首页 > 配置Apache针对不同的根域名指向不同目录,求助!!!!

配置Apache针对不同的根域名指向不同目录,求助!!!!

首先我模拟了2个域名,如图

然后我针对两个根域名,分别指向了不同的目录,如图

然后sudo apachectl restart,最后,尝试访问,结果却不行,请我我哪里错了?

权限也给了啊


conf/http-vhost.conf


403 Forbidden? Apache 我没有用过,但是我在Mac上使用Nginx反向代理时遇到了一个403的错误,原因是: 当用户需要获取一个文件时,需要他的每一个父文件夹都有可执行权限(x)才行,因此解决办法: chmod -R o+x <path> 你可以试试能解决不,希望会有帮助~

更新一下: 看你补充了问题说权限也给了(读和写),不过我说的可执行权限(x),而且不单是项目文件夹,到项目的整个路径文件夹都需要,不知道你有没有弄懂……


你确认下httpd.conf下的Directory配置,或者你可以选择在vhost内部增加一个Directory配置,我的配置如下供参考:

<Directory />
    Options ExecCGI FollowSymLinks Includes IncludesNOEXEC -Indexes -MultiViews SymLinksIfOwnerMatch
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

楼上 查尔斯 的回答基本正确,但是直接对根目录 / 开启权限在某些情况下会有安全问题所以直接对/Users/gao/project设置就足够了。

另外 如果你用Apache 2.2 用

<Directory /Users/gao/project>
    Options Indexes FollowSymLinks
    AllowOverride all
    Order allow,deny
    Allow from all
</Directory> 

如果用Apache 2.4, 用:

<Directory /Users/gao/project>
    Options Indexes FollowSymLinks
    AllowOverride all
    Require all granted
</Directory>

至于这个配置信息存到哪,其实大部分地方都可以,直接放在vHost的配置文件可以,apache2.conf也可以。


我再说最后一次:
计算机永远是对的.(绝~~~大多数情况下).

你的计算机告诉你403, 那就是事实. 虽然你说你给了权限, 但是很显然你给权限的"姿势"有问题.

  1. 确认apache启动的用户, nobody? www?

  2. 确认document root 所属用户.

  3. 群人document root 权限(可读?可写?)

BTW: 既然用了MAC, 而且还是搞服务器软件, 建议你多用命令行. 不是说图形界面不好, 只是搞服务器的人基本都用命令行, 你很难用图形界面跟这帮人把问题描述清楚.

【热门文章】
【热门文章】