我创建了一个可从网络访问的 Apache2 服务器。但是当我添加一个子文件夹时: myserver/test
=> 这个地址不可访问(404 Not found 错误)
我怎样才能解决这个问题?
首先,您确定test
在正确的位置创建了新文件夹吗?在 Debian 上,apache2 默认配置为拥有一个 SiteRoot(您的静态网站的根目录/var/www
)以驻留在. 显然,只有该目录中的文件/目录才会由 apache 提供服务。
您的网络服务器以系统用户身份运行(在 Debian 上这是www-data
默认设置)。因此,网络服务器只能访问该用户可能访问的文件。很有可能,您创建的新文件夹具有阻止网络服务器访问任何文件(或文件夹本身)的权限。修复它使用类似的东西:
chgrp -R /var/www/test
chmod -R g+rX /var/www/test
好的,我找到了解决方案。事实上,我想添加一个虚拟主机,所以我修改了 apache2.conf 文件。在这个文件的底部,我评论了一个重要的行:include available-sites
现在一切正常
只需检查您是否具有对子目录或文件夹的读取权限,ls -la
您可以使用命令授予对子文件夹的读取权限
chmod -R 775 /var/www/html/subfolder
Or
chmod -R 775 /var/www/subfolder
根据您的文件夹结构