Asp.net Application_BeginRequest не запущен, global.asax не запущен на сервере - PullRequest
0 голосов
/ 05 февраля 2012

Для перезаписи URL я написал код в global.asax

, просто для тестирования, я просто пытаюсь

string hurl = HttpContext.Current.Request.Url.AbsoluteUri.ToLower() if(hurl.Contains("atech.html")){HttpContext.Current.RewritePath("btech.html");}

Я также настроил

<modules runAllManagedModulesForAllRequests="true"/>

это работает в моем локальном iis, но я не запускаюсь на своем хост-сервере

, выдавая ошибку 404.

Ответы [ 3 ]

0 голосов
/ 18 ноября 2015

Мне удалось решить эту проблему, опубликовав свой веб-сайт с помощью параметра «удалить все существующие файлы перед публикацией», этот параметр находится в окне мастера публикации, «Настройки»> «Параметры публикации файлов».

В моем случае, по неизвестной причине, выполнение Application_BeginRequest на global.asax.cs было проигнорировано, я смог подтвердить эту проблему, добавив запись журнала в Application_BeginRequest, запись журнала никогда не записывалась.

0 голосов
/ 05 июля 2016

Попробуйте переключить управляемый режим конвейера из классического в интегрированный в пул приложений

0 голосов
/ 06 апреля 2012

ОК, вот как я это исправил ... IIS нужно сказать, какие файлы обрабатывать. В моем случае мне понадобилось несколько обработчиков для файлов * .js и * .php для перенаправления в файлы aspx или ashx.

Локально это работает просто отлично, но при развертывании все, что я получаю, это 404.

Так что вам нужно перейти в IIS. Найдите конфигурацию своего сайта и добавьте записи в сопоставления обработчиков (IIS7, в IIS6, я думаю, что это в конфигурации приложения), чтобы обрабатывать * .XXX и иметь любой обработчик для * .aspx (обычно его System.Web.UI.PageHandlerFactory). )

И это должно быть исправлено. Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...