【问题标题】:symfony 500 errors on missing images缺少图像的 symfony 500 错误
【发布时间】:2012-02-18 13:26:54
【问题描述】:

当我们的站点缺少图像时,我们注意到许多 500 错误(这种情况由于各种原因而发生) - symfony 将首先尝试在通常的 'uploads/custom/myasset.jpg' 文件夹中找到资源如果它找不到资产,那么它将通过 symfony 寻找匹配的路线,它的这个“通过” symfony 导致了轻微的性能问题,我想知道是否有其他人遇到过这个问题以及他们是如何解决的.

我尝试过使用 mod_rewrite 规则,但我的正则表达式知识很烂!

干杯!

【问题讨论】:

  • 如果你想使用 mod_rewrite 来解决这个问题,能否请你添加更多关于应该重定向到哪里以及你已经尝试过的细节?

标签: php apache mod-rewrite symfony1 jpeg


【解决方案1】:

您可以添加 RewriteCond 以从 RewriteRule 中排除某个目录。

例如:

RewriteCond %{REQUEST_URI} !^/images/
RewriteRule ^(.*)$ index.php [QSA,L]

将从 symfony 前端控制器的默认重写规则中排除任何以“/images/”开头的请求。您可以根据需要在 RewriteRule 之前添加任意数量的 RewriteCond,或者您可以修改正则表达式以适应不同的情况,例如:

RewriteCond %{REQUEST_URI} !^/(images|uploads)/

但是,您的问题表明仍然存在另一个问题,因为 symfony 在无法路由请求时应该抛出 404 期望,这会导致 HTTP 404 响应。它绝对不会导致 HTTP 500 响应。也许有故障的 404 控制器正在引发异常。您应该进一步调查错误 500 的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-24
    • 2014-05-22
    • 1970-01-01
    • 1970-01-01
    • 2017-01-20
    • 2017-10-16
    • 1970-01-01
    • 2017-07-13
    相关资源
    最近更新 更多