在 fedora14中搭建了一个 Apache+ mysql + php 环境(使用源码安装),为了开发方便,我想把apache的工作目录改到当前用户目录下面 /home/currentUser/htdocs (其中“currentUser”为当前用户人名称) 我修改了apache的配置文件 /usr/local/apache2/conf/httpd.conf (其中/usr/local/apache2是我的apache安装路径) 修改如下: #DocumentRoot "/usr/local/apache2/htdocs" 注释原来的工作路径 DocumentRoot "/home/currentUser/htdocs" 把工作路径改为自己设定的路径 # # This should be changed to whatever you set DocumentRoot to. # #<Directory "/usr/local/apache2/htdocs"> 把原来的Directory设置注释 <Directory "/home/currentUser/htdocs"> 设置新的Directory 此时,保存配置文件,重启apache服务完成修改 但是,在我访问服务的时候,网页却返回了一个错误页面,提示403 Forbidden ,下面的说明大概就是说我没有权限访问改资源。 我首先想到的是目录的读写权限,于是我修改把改目录的权限 chmod 777 /home/currentUser/htdocs -R(使用管理员身份执行,加上参数-R是为了让改路径下的子目录都具有相同的权限) 但是,问题依然存在,为什么呢? 在网上找了很多,终于发现问题所在了,还是httpd.conf配置的问题 在配置文件中找到下面两句 user deamon group deamon 因为这两句的存在,使得apache并没有权限去读写当前用户的目录,所以会出现权限问题 把它们改为 user currentUser (其中 currentUser 是当前用户的用户名) group currentGroup (其中 currentGroup 是当前用户所在的组名 如不知道 可用命令 groups "当前用户名" 来查询)
这样,使用当前用户身份运行apache就可以访问到工作目录了。