Apache 不接受我的主文件夹中的路径

Apache 不接受我的主文件夹中的路径

我尝试设置一个 Apache 站点以使用我的主文件夹中的文件夹,但没有成功。我严格按照本页中的步骤操作:https://help.ubuntu.com/community/ApacheMySQLPHP

但我没有成功;我不断错误 403,表示服务器没有权限访问请求的页面。我搜索了论坛,很多人建议更改文件夹的权限。我直接将权限设置为777,但这并没有解决问题。

我又搜索了一下,有人给了我一个线索,可能是因为我的主文件夹被加密了。我相信这可能是问题所在,但是:

加密和 Apache 之间有什么关系?我认为 Apache 服务器正在向系统请求文件,而不是尝试访问文件字节!

有什么办法可以解决这个问题吗?我不想移动文件夹,/var/www因为我正在使用这个 Apache 进行测试,所以我希望我所做的任何更改都能立即反映出来,而不必复制容易出错的文件。

答案1

你的 error_log 里有什么?

我认为主文件夹加密不应该成为问题。我已将 /var/www/ 符号链接到主文件夹中的位置,并且Options +FollowSymLinks在站点配置中,它运行良好。

简单说几句 - 你可以sudo chgrp -R www-data <path>; sudo chmod -R g+a <path>不将权限设置为 777 - 这通常是一个好习惯,如果你在共享主机上,这很重要。
我不确定你说的“我希望我所做的任何更改都能立即反映出来”是什么意思,但我猜你的意思是在 /home 中保留一个工作副本并将 Apache 指向 /var/www - 这不是必要的/必需的。你可以ln -s像我上面描述的那样使用,或者像你尝试的那样将 Apache 直接指向你的主文件夹。

答案2

我在下一个链接中写了这篇文章,希望这对你有帮助,点击即可访问完整的帖子:

更改 Linux 中 PHP 测试的默认文件夹 http://ultimateeditionisrael.freeforums.org/change-the-default-folder-for-php-testing-in-israel-remix-t600.html

但是,如果我们希望在 PHP 代码中使用另一个本地文件夹进行测试,我们可以更改 php 引擎用来管理这些文件的默认文件夹位置。这可以通过以下步骤完成:

gksu gedit /etc/apache2/sites-available/default

提供用户密码

然后,将所有出现的“/var/www/”更改为我们用来测试 PHP 的文件夹。(例如:/home/geppettvs/www/,或在适当的情况下,将“geppettvs”更改为您的本地文件夹。)

之后,您必须重新启动计算机以使更改生效。还请不要忘记,文件必须具有适当的文件权限才能正常运行。(755 通常就足够了,但有些文件夹[和/或文件]可能需要 777 权限才能正确读取和写入它们。)

相关内容