Hallo,
ich arbeite momentan an einem URL Redirect Modul für das CMS DNN.
Die Aufgabe ist es, bestimmte URLs abzufangen und dann einen 301 Redirect vorzunehmen.
Ankommende Requests werden zum Beispiel so gehandhabt (Auszug):
Mit "normalen" URLs funktioniert das auch, nur nicht bei URLs mit Sonderzeichen/Umlauten.
Wenn ich bspw. meine Website so aufrufe: "http://test123.de/IndustrieIm%EF%BF%BDberblick.aspx" (Das CMS hat den Link damals so generiert), dann stelle ich während des Debuggings fest, dass die URL im Backend etwas anders ankommt:
Gibt es einen Weg das in die Orginal URL zu konvertieren/encoden? Also:
Danke
ich arbeite momentan an einem URL Redirect Modul für das CMS DNN.
Die Aufgabe ist es, bestimmte URLs abzufangen und dann einen 301 Redirect vorzunehmen.
Ankommende Requests werden zum Beispiel so gehandhabt (Auszug):
C#-Quellcode
- public void OnBeginRequest(object sender, EventArgs e)
- {
- try
- {
- HttpApplication app = (HttpApplication)sender;
- HttpServerUtility server = app.Server;
- HttpRequest request = app.Request;
- HttpResponse response = app.Response;
- string test = HttpUtility.UrlDecode(request.Url.AbsolutePath);
- if (test.contains("IndustrieIm%EF%BF%BDberblick.aspx")) Redirect301(response, "/home");
- catch (Exception exc)
- {
- DotNetNuke.Services.Exceptions.Exceptions.LogException(exc);
- }
- }
Mit "normalen" URLs funktioniert das auch, nur nicht bei URLs mit Sonderzeichen/Umlauten.
Wenn ich bspw. meine Website so aufrufe: "http://test123.de/IndustrieIm%EF%BF%BDberblick.aspx" (Das CMS hat den Link damals so generiert), dann stelle ich während des Debuggings fest, dass die URL im Backend etwas anders ankommt:
Gibt es einen Weg das in die Orginal URL zu konvertieren/encoden? Also:
Danke