Apache2部署在Google Cloud Ubuntu系统无法显示.png图片,报404/403错误如何解决?
Ubuntu 环境Apache2图片访问404/403问题排查方案
1. 确认路径匹配与Apache默认alias冲突
首先排查最常见的路径映射问题:
- 先确认你部署的icons目录及logo.png是否存放在Apache站点根目录下,默认根目录为
/var/www/html,执行命令验证文件存在:ls -l /var/www/html/icons/logo.png
若返回无此文件,直接将对应资源移动到正确路径即可。 - 检查Apache默认的/icons路径别名配置,Ubuntu系统默认Apache会将
/icons/路径映射到系统目录/usr/share/apache2/icons/,会覆盖你放在网站根目录下的icons文件夹,执行命令验证:grep -r "Alias /icons" /etc/apache2/
如果存在该alias配置,可选择删除该默认alias、修改你自己的icons目录名称,或者调整站点配置优先级覆盖默认规则。
2. 修正目录与文件权限
Apache在Ubuntu中的默认运行用户为www-data,需要确保资源有可读权限:
- 给icons目录设置访问权限:
chmod 755 /var/www/html/icons - 给目录下所有图片设置可读权限:
chmod 644 /var/www/html/icons/* - 统一修改目录所有者为Apache运行用户:
chown -R www-data:www-data /var/www/html/icons
3. 调整Apache目录访问规则
检查站点配置文件(一般路径为/etc/apache2/sites-available/000-default.conf或自定义的站点配置文件),确保icons目录的访问规则允许公开访问,配置参考:
return (<Directory /var/www/html/icons> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> )
如果原有配置为Require all denied,修改后执行重启命令生效:systemctl restart apache2
4. 验证文件完整性
如果上述配置都调整完成仍无法访问,本地打开logo.png确认文件无损坏,重新上传完好的文件即可。
内容的提问来源于stack exchange,提问作者Dorbn
相关产品推荐
相关产品推荐

