1

我正在寻找解决我今天下午偶然发现的一个奇怪问题的方法。

我的类别页面开始为 media/js 文件(我相信是 Magento 生成的合并 js 文件之一)抛出 404 not found 错误。这自然会导致类别页面在一些地方出现故障,包括在页面顶部放置一个无法解释的数字并破坏导航。这是在行动:http ://www.vapetropolis.ca/herb-grinders 。

我尝试在后端禁用 js 和 css 合并。我还尝试过刷新 magento 缓存、刷新缓存存储、刷新 javascript/css 缓存以及手动删除 var/cache 中的所有条目。在所有这些刷新之后,media/js 目录是空的。但是,类别页面仍在寻找相同的文件(所有其他页面仍然可以正常工作)。

值得注意的是,我本地机器上的相同站点运行良好,并且包含生产站点找不到的文件。

编辑:将 js 文件从本地投放到生产站点并没有帮助 - 类别页面上仍然存在多个 js 错误。

我猜这个问题与 Magento 混乱的合并功能有关。

编辑(2):问题与缓存有关(谢谢runamok)。将查询字符串添加到 URL 时,页面可以正常工作。所以一定是magento的缓存以某种方式提供了一个错误的页面。

我已经尝试禁用所有缓存,以及在后端禁用预编译,但行为保持不变

编辑(3):仍然需要帮助!

4

1 回答 1

2

看起来您可能已根据现有的此 url 解决了问题。 http://www.vapetropolis.ca/media/js/a87bf7cc5dcd7a07e58a41c1063e1f4a.js

一般来说,这是因为 media/js 文件的权限不正确。显然 chmod 777 是设置它的最简单方法,但理想情况下,您应该确保该目录归运行 apache 的用户所有。

此外,如果您使用某种整页缓存,您可能也需要刷新它。页面期望该文件已经存在,因此它不会尝试重新生成它。

最后,您是否使用任何类型的服务,例如 cloudflare 或 varnish 或 cdn 或其他任何可能在短时间内缓存 404 的服务?

于 2012-11-07T04:56:10.500 回答