解决访问网站目录存在资源时返回404的问题
起因
在六月下旬出现一次图床仓库误删除的事故,也因此本站的萌娘背景图片迎来了一次大换血。也是为了提高效率,我写了些脚本,把一切麻烦的流程(根据分辨率判断适用设备、从文件名中提取Pixiv ID、输出图片列表)交给了机器。
但最近不知道为什么,部分背景图片在网站访问不到,返回404。且经检查,Web端访问不到的背景图片偏偏存在于网站的资源目录中。
见了鬼了。
解决
逐个找到这批幽灵般的图片,才发现它们都有一个特征:文件名的第一个字符为_ 或# 。
将_ 或# 去掉,问题解决。
其中造成这一点的原因之一是URL会识别# 为锚点,所访问到的实际上是文件所在的目录。但文件所在的目录不存在index.html
,所以就会返回404。这是已知的。
至于为何_ 也会被屏蔽……不明。只要_ 不是文件名第一个字符就可以访问。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 冻符「Minus-K」!
评论