2011-01-17 7 views
1

У нас есть массив из примерно 12 серверов, обслуживающих веб-сайт. За последние несколько часов один единственный сервер начал бросать исключения для запросов WebResource.axd и ScriptResource.axd.Исключения для исключения WebResource.axd в веб-ферме

Исключение

System.Web.HttpException - это запрос неверный сценарий ресурса.

Трассировка стека

в System.Web.Handlers.ScriptResourceHandler.ProcessRequest (HttpContext контекст)
в System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
на System.Web.HttpApplication.ExecuteStep (IExecutionStep шаг, булева & completedSynchronously)

Брокен URL сервера

/WebResource.axd?d=S6kjkBsrIKni9uO5HCkv0c8eYObzibWXn9R6A7Yr_Fy7CW4dRFZm1HfcnUTEZ8xBYZDM-5zeTVk1tTgC1hp7d5YYw3o1 & т = 634308186300177825

Все другие серверы URL

/WebResource.axd?d=yj6PW1hbOvqhMkOh2gYGlw2 & т = 634207187366247462

Я проверил web.config, machine.config для каждого сервера, и все они идентичны. Единственное различие, которое удалось найти до сих пор, заключается в том, что до начала проблемы серверы были исправлены, после чего проблемный сервер использует другую версию System.Web.dll для других?

Любые идеи?

ответ

2

Обнаружили причину проблемы. На проблемном сервере применен исправление безопасности, которое обновило System.Web.dll. По какой-то причине наш хостинг-провайдер не обновил ни одну из других DLL, и в свою очередь этот сервер генерировал разные ключи шифрования для других.

Чтобы работать, какие длл была затронута, я использовал следующее для расшифровки параметров строки запроса WebResource.axd:

http://blogs.telerik.com/aspnet-ajax/posts/07-03-27/debugging-asp-net-2-0-web-resources-decrypting-the-url-and-getting-the-resource-name.aspx

0

«? D = yj6PW1hbOvqhMkOh2gYGlw2 & т = 634207187366247462» является ссылка каким-то образом (хэш или что-то?) К ресурсу в System.Web.dll, так понятно, с различными DLL файлы на этом сервере ссылка не действительна ,

+0

Спасибо Крис. Наверное, я просто пытаюсь понять, были ли на всех серверах применены одни и те же патчи, как этот единственный сервер оказался с разными DLL и в свою очередь хэшировал значения для остальных? – timothyclifford