Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Global.asax и redirect / 4 сообщений из 4, страница 1 из 1
11.07.2006, 12:13
    #33844553
Armitage
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Global.asax и redirect
тема наверное избитая, но не понимаю почему не работает:
Global.asax:
<script language=C# runat="server">
void Application_BeginRequest (Object sender, EventArgs e)
{
string scriptPath = Global.RootPath + "/mypage.aspx?id=1";
this.Context.RewritePath(scriptPath);
}
</script>
насколько я понимаб то все запросы на даный сайт должны отправлятся на "mypage.aspx?id=1"
Т.е. www.site.ru/mysite/mypage.aspx?id=1 --> попадает на mypage.aspx?id=1
www.site.ru/mysite/somepage.aspx --> должно попадать на mypage.aspx?id=1, но выдает "The page cannot be found"
:???:
в папке mysite находятся оба этих файла
...
Рейтинг: 0 / 0
17.07.2006, 18:04
    #33858897
gaidar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Global.asax и redirect
Хотите перезапись URL сделать? Возьмите мой модуль.--
Гайдар Магдануров
E-Mail | Блог | Сайт

Difficult I do now, impossible will take a while...
...
Рейтинг: 0 / 0
18.07.2006, 10:19
    #33859797
cadet354
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Global.asax и redirect
Здравствуйте, gaidar, Вы писали:

G>Хотите перезапись URL сделать? Возьмите [email]http://blogs.gotdotnet.ru/personal/gaidar/PermaLink.aspx?guid=07696cc5-edf2-4442-8d85-41a6c92465e1]мой модуль.

спору нет, модуль хороший, но ИМНО после подобных ответов у автора вопроса может развится комплекс плохого дельфиста: будет искать нужный компонент вместо решения проблемы.

to Armitage:
Rewrite по MSDN это: internal rewrite path,
судя по рефлектору он изменяет входную строку в HttpRequest,
и видно HttpApplication потом не учитывает эти изменения
поэтому 404 и возникает.

Попробуй HttpResponse.Redirect(), должно помочь.

P.S. мои рассуждения по поводу Rewrite могут быть не верны,и я буду рад если меня поправят, но Redirect() точно поможет :)... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
...
Рейтинг: 0 / 0
18.07.2006, 14:54
    #33861040
cadet354
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Global.asax и redirect
Здравствуйте, cadet354, Вы писали:

решил проверить:

            string scriptPath = "whatiswinmobile.aspx";
      string query = "id=1";
      if (!Request.Path.Contains(scriptPath)&& !Request.Path.Contains("WebResource.axd"))
        {
             Context.Response.Redirect (scriptPath + "?" + query);
        }
работает естественно,

            string scriptPath = "whatiswinmobile.aspx";
      string query = "id=1";
      if (!Request.Path.Contains(scriptPath)&& !Request.Path.Contains("WebResource.axd"))
        {
             Context.RewritePath (scriptPath + "?" + query);
        }
так же работает, строка адреса не изменяется(но Request.Path изменен, как надо), непонятно в чем заключается проблема?... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Global.asax и redirect / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]