在window下配置apache虚拟目录相当容易,
Alias /phpxiaoxin/ "d:\phpxiaoxin"
< Directory "d:\phpxiaoxin" >
Options MultiViews
AllowOverride None
Order allow,deny
Allow from all
< /Directory >
但是linux 下主要涉及到一个权限问题,按照下面配置
Alias /phpxiaoxin/ "/home/phpxiaoxin/public_html/"
< Directory "/home/phpxiaoxin/public_html/" >
Options MultiViews
AllowOverride None
Order allow,deny
Allow from all
< /Directory >
就会出现403 Forbidden的错误,下面这个帖子可以解决一定的问题。
http://bbs.linuxeden.com/thread-103022-1-1.html
其实问题就在于apache没有权限去读取public_html这个目录,于是通过chmod的方式将public_html附上权限。包括phpxiaoxin目录和public_html目录。切换到root下执行下面命令
chmod 755 phpxiaoxin
chmod 755 -R public_html
这个时候,访问:http://localhost/phpxiaoxin/会发现哈哈,可以以目录的形式看到里面的文件了,点一下index.html,又是一个403,郁闷坏了,又查了一下资料,涉及到了deny与allow,于是将下面的Deny from all改成了Allow from all
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory>
结果就ok了。但是不爽的是,每次往public_html里面加文件都需要执行一下chmod 755 -R public_html,因此这个放案只能用作解决燃眉之急用,应该可以通过一些用户组的设置实现方便的访问。另外网络上对于以下两句public_html后面的斜杠有的说加有的说不加,也有的说第行个加,第二行不加,我不确定哪个正确,但是我两行都加上了,并且可用。
Alias /phpxiaoxin/ "/home/phpxiaoxin/public_html/"
< Directory "/home/phpxiaoxin/public_html/" >
对于权限问题下面地址里面的最后几行,说了Permission denied引起的原因。大家也可以研究一下。
http://www.phpx.com/man/Apache-2/faq/index.html
完善的解决方案,我配置好了,再重写这个吧