Apache 的自定义根文件夹拒绝访问

Apache 的自定义根文件夹拒绝访问

我刚刚安装了 ubuntu 桌面(因为我认为服务器对我来说太多了,显然我是对的)并且我正在尝试配置我的 apache 网络服务器,但不幸的是它与我在 Windows 上配置它的方式无关。

我安装了据称包含 php 和 mysql 的软件包lamp-server^,但我还没有安装它们。

安装软件包并转到后,http://localhost我看到了默认的欢迎页面,到目前为止一切顺利。但是我想将根文件夹从移动/var/www/html到,/home/user/www/html因为我不知道应该给这些分区多少空间,而我给了home更多的空间。为此,我必须编辑,httpd.conf但系统上没有这样的文件。经过短暂的研究,我发现我必须编辑,/etc/apache2/sites-available/000-default.conf我想这是一个虚拟服务器。所以我像这样编辑它

ServerName localhost
ServerAdmin webmaster@localhost
DocumentRoot /home/user/www/html

我不仅不断收到这条烦人的消息

AH00558:apache2:无法可靠地确定服务器的完全限定域名,使用 127.0.1.1。全局设置“ServerName”指令以隐藏此消息

此外,当我尝试访问时,我收到 403 访问被拒绝http://localhost

我一直在网络和灯页面上寻找解决方案,但似乎无法解决问题,这非常累人。

答案1

根据错误消息,尝试ServerName localhost在主服务器上下文中进行设置,即在 VirtualHost 容器之外。为此,请将指令放入文件(例如 /etc/apache2/conf-available/servername.conf)中,然后运行a2enconf servername以启用它,并使用 重新启动 apache service apache2 restart

至于 403 错误,/home/user/www/html 可能对 www-data 用户不可读。要测试这一点,请尝试设置chmod a+rx /home /home/user /home/user/www /home/user/www/html,看看 403 是否消失。但请注意,这些权限比您通常想要设置的权限范围更广。有关 apache 的更永久的权限集,请参阅我的网站文件/文件夹在 Linux 网络服务器上应该具有什么权限?

相关内容