![Apache 的自定义根文件夹拒绝访问](https://linux22.com/image/658259/Apache%20%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%E6%A0%B9%E6%96%87%E4%BB%B6%E5%A4%B9%E6%8B%92%E7%BB%9D%E8%AE%BF%E9%97%AE.png)
我刚刚安装了 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 网络服务器上应该具有什么权限?