2014-10-06 32 views
0

我试图获得Apache配置文件的句柄。我想要做的一件事就是将一些网页从/ var/www目录中移走。我在我自己的电脑上有一个工作配置(名字是pc01)。在/ var/www/compile /中有一个用于测试的网页,里面有一个单独的页面文件:compile.php。一个简单的测试页面的Apache配置

我将编译文件夹移至/ home/web/compile。我创造了这个配置文件:

<VirtualHost *:80> 
     ServerName ctest 

     DocumentRoot /home/web/compile/ 
     <Directory /> 
       Order Allow,Deny 
       Options FollowSymLinks 
       AllowOverride None 
     </Directory> 


     ErrorLog ${APACHE_LOG_DIR}/error.log 

     # Possible values include: debug, info, notice, warn, error, crit, 
     # alert, emerg. 
     LogLevel warn 

     CustomLog ${APACHE_LOG_DIR}/compile.log combined 

</VirtualHost> 

据我所知我已经使用教程,如果我指出我的浏览器PC01/CTEST/compile.php我应该看到的网页。但是我得到的是:

故宫

您没有权限访问此服务器上/ctest/compile.php。

我在做什么错?

+0

'/ home/web/compile /'的访问权限是什么?例如。 “允许,拒绝 全部允许' – 2014-10-06 10:55:27

+0

什么是compile.php的文件权限 尝试给它777进行测试,但是服务器上的php文件必须具有644的文件权限,目录应该有755 – justrohu 2014-10-06 10:55:33

+0

我没有添加部分,因为我认为这不是必需的。请参阅更新表单y代码 – aarelovich 2014-10-06 11:19:01

回答

0

您需要将文件所有者设置为apache用户(运行Web服务器的用户)。 Web服务器的默认用户是www-data。在终端尝试这个命令:

CHOWN WWW的数据:WWW的数据/家庭/网络/编译-R

+0

该文件夹属于名为webdev的组,该数据库属于www-data和我自己。我拥有所有权利。当我使用以前的配置(与服务器一起安装的文件000-default.conf)时,此功能完美无缺。反正我尝试过chown,但没有任何区别 – aarelovich 2014-10-06 11:18:34

0

找到它!关键是修改apache2.conf文件(Debian中的/etc/apache2/apache2.conf)以添加除/ var/www之外的其他文档根目录。然后它开始工作。谢谢您的帮助!