Symfony 500 ошибок на отсутствующих изображениях - PullRequest
2 голосов
/ 25 января 2012

Мы заметили 500 ошибок, когда изображение отсутствует на нашем сайте (это происходит по разным причинам) - Symfony попытается найти ресурс в первую очередь в обычной папке «uploads / custom / myasset.jpg» и если он не может найти ресурс, он будет просматривать symfony, чтобы попытаться найти подходящий маршрут, это «проходящее» symfony вызывает небольшую проблему с производительностью, и мне было интересно, сталкивался ли кто-то еще с этой проблемой и как они ее решили .

Я пытался с правилом mod_rewrite, но мои знания регулярных выражений - отстой!

Ура! * * 1005

1 Ответ

3 голосов
/ 25 января 2012

Вы можете добавить RewriteCond для исключения определенного каталога из RewriteRule.

Например:

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

Исключит любой запрос, начинающийся с "/ images /", из перезаписи по умолчаниюПравило для фронт-контроллера Symfony.Вы можете добавить столько RewriteCond перед RewriteRule, сколько хотите, или вы можете изменить регулярное выражение для учета различных случаев, например:

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

Однако ваш вопрос предполагает, что есть еще одна проблема, так как Symfony долженвыбрасывать 404 ожидания, когда он не может направить запрос, что приводит к ответу HTTP 404.Это определенно не приведет к ответу HTTP 500.Возможно, неисправный контроллер 404 выбрасывает исключение.Вам следует дополнительно выяснить причину ошибки 500.

...