Это мой первый пост на SO. :) Моя цель - в приложении (которое является существующим приложением VB.NET shudder ) всякий раз, когда встречается запрос для такого ресурса, как:
/itemimages/image.png
Что он переписывается на
http://example.com/itemimages/image.png
На производственном сайте есть 10 ГБ изображений, поэтому для локальной разработки мы просто хотим переписать запрос, чтобы нам не нужно было загружать и перемешивать около 10 ГБ изображений продуктов.
Я пробовал следующее в Application_BeginRequest (), имейте в виду, что я упрощаю это, чтобы проиллюстрировать проблему, с которой я сталкиваюсь:
If (url1.IndexOf("itemimages") > 0) Then
Dim app As HttpApplication = CType(sender, HttpApplication)
app.Context.RewritePath("https://www.google.com/images/srpr/logo3w.png")
End If
Я получаю следующую ошибку:
https: /www.google.com/images/srpr/logo3w.png не является допустимым виртуальным путем.
Обратите внимание на одну косую черту в https: /www.google.com, хотя я указал две косые черты. Кроме того, здесь явно упоминается, что это недействительный ВИРТУАЛЬНЫЙ путь, поэтому, по-видимому, я не могу указать здесь абсолютный URL-адрес.
Как я могу переписать запросы к «/itemimages/image.png» на «http://www.website.com/itemimages/image.png»? Я публикую это на C # также потому, что мне в любом случае удобнее пользоваться этим языком и, вероятно, я могу довольно легко преобразовать любое решение между ними.
1 ответ
Context.RewritePath
обрабатывает запрос по другому пути с помощью ASP.Net.
Нет смысла делать это с внешним сервером.
Вы хотите Response.Redirect
.
Похожие вопросы
Новые вопросы
.net
НЕ используйте для вопросов о .NET Core - используйте вместо этого [.net-core]. .NET Framework - это программная среда, предназначенная главным образом для операционной системы Microsoft Windows. Он включает в себя реализацию библиотеки базовых классов, общеязыковой среды выполнения (обычно называемой CLR), общей системы типов (обычно называемой CTS) и динамической среды исполнения. Он поддерживает множество языков программирования, включая C #, VB.NET, F # и C ++ / CLI.