powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Проблема с редиректом за шлюзом
3 сообщений из 3, страница 1 из 1
Проблема с редиректом за шлюзом
    #37738699
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Организация имеет один внешний ip с шлюзом, через который разруливает несколько веб-серверов доменами третьего уровня. На моем сервере сидит единственный сайт в корне (//localhost), снаружи он виден как subdom.domain.ru, причем при вводе адреса происходит редирект на subdom.domain.ru/folder. Главный сайт написан на классическом asp, а у него есть примочка, написанная на ASP.NET, которая вскрыла одну проблему. Выкладываю на сайт файлы test.asp, test.aspx и test.htm.

test.asp:
Код: plaintext
1.
2.
3.
<%
Response.Redirect "test.htm"
%>



test.aspx:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="test.aspx.vb" Inherits="_Default" 
Debug="true" ValidateRequest="false" %>

test.aspx.vb:

Partial Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
    Response.Redirect("test.htm")
    End Sub
End Class



При вводе subdom.domain.ru/folder/test.asp все происходит как надо — в браузер возвращается адрес subdom.domain.ru/folder/test.htm и оный ресурс невозбранно загружается.
При вводе subdom.domain.ru/folder/test.aspx в браузер возвращается адрес subdom.domain.ru/test.aspx. Путь /folder/ куда-то пропадает, а браузер загружает популярную страницу 404.

Вопрос: что это за подстава со стороны IIS/.NET? Как с ней разобраться?
Вот ответы сервера:

на test.asp:
HTTP/1.1 302 Object moved
Via: 1.1 GDC
Content-Length: 137
Date: Wed, 04 Apr 2012 12:09:56 GMT
Location: test.htm
Content-Type: text/html
Server: Microsoft-IIS/7.5
Cache-Control: private
X-Powered-By: ASP.NET
Keep-Alive: timeout=5, max=100

<head><title>здесь был битый юникод</title></head>
<body><h1>здесь был битый юникод</h1>здесь был битый юникод <a HREF="test.htm">здесь был битый юникод</a>.</body>

на test.aspx:
HTTP/1.1 302 Found
Via: 1.1 GDC
Content-Length: 128
Date: Wed, 04 Apr 2012 12:10:03 GMT
Location: /test.htm
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.5
Cache-Control: private
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Keep-Alive: timeout=5, max=100

<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="%2ftest.htm">here</a>.</h2>
</body></html>

HTTP/1.1 404 Not Found
Via: 1.1 GDC
Content-Length: 206
Date: Wed, 04 Apr 2012 13:22:42 GMT
Content-Type: text/html; charset=iso-8859-1
Server: Apache/2.2.10 (Unix) DAV/2 PHP/5.2.8
Keep-Alive: timeout=5, max=99

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /test.htm was not found on this server.</p>
</body></html>
...
Рейтинг: 0 / 0
Проблема с редиректом за шлюзом
    #37738806
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Суть подставы выявилась:

Location: test.htm (для asp)
Location: /test.htm (для aspx)

Если сделать редирект на /test.htm в asp, то картина точно такая же как в aspx. Unix-шлюз как-то по-своему резолвит этот слеш.

Так что вопрос теперь конкретный: как отучить iis от слеша в location в aspx?
...
Рейтинг: 0 / 0
Проблема с редиректом за шлюзом
    #37738865
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полу-решение: не пользоваться редиректом.
Код: vbnet
1.
2.
3.
Response.AddHeader("location", "test.htm")
Response.StatusCode = 302
Response.Flush()

Хорошо что у меня собственный clsResponse, так что нужна всего одна правка.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Проблема с редиректом за шлюзом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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