【问题标题】:Broken png image using Laravel Asset Pipeline despite 200 OK status尽管状态为 200 OK,但使用 Laravel 资产管道损坏的 png 图像
【发布时间】:2014-12-18 22:58:14
【问题描述】:

我在我的 Laravel 项目中使用 Codesleeve/asset pipeline 来提供 css、js 和图像文件。它总体上工作正常,但显示 css 加载的图像存在问题。图片不显示,直接加载时显示浏览器的“损坏图片”符号(例如http://art.ipscap.com/assets/select2.png):e.g.

在检查页面时,它显示图像已成功加载,状态为 200 OK(或缓存),但显示它似乎有错误。看到有问题的图像在我的本地计算机上显示正常,并且问题仅存在于生产中,有没有办法诊断这个问题?

编辑:仍然没有找到解决方案。作为参考,实时损坏的图像 url 是https://art.ipscap.com/assets/select2.png。图片本身在app/assets/images/select2.png,同一目录下的自述文件说明:

如果您在此处放置名为 foobar.png 的图像,则可以通过转到 http://<hostname>/assets/foobar.png 来访问该图像

我觉得这很奇怪,因为图像并没有加载失败,而是被资产管道破坏了。应用程序中的其他图像(例如标题 jpeg 图像)似乎不会发生相同的情况。

【问题讨论】:

    标签: php image http laravel-4


    【解决方案1】:

    您在本地服务器和生产服务器上使用不同的服务器软件吗?我看到生产使用 nginx。在这种情况下,您可能需要在配置中添加一些内容,如下所述:

    https://github.com/CodeSleeve/asset-pipeline#can-i-use-nginx

    【讨论】:

    • 确实,我在生产服务器上使用 Nginx,但我已正确设置配置,因此图像确实加载 (200) 但似乎已损坏或损坏。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 2021-09-11
    • 1970-01-01
    • 1970-01-01
    • 2014-09-06
    相关资源
    最近更新 更多