Silex app-redirect stimmt nicht mit Routen überein

7

Lassen Sie meine Anwendung auf localhost laufen, der Pfad ist: localhost/silex/web/index.php , definierte Routen wie im unten stehenden Code, ich würde erwarten, dass localhost/silex/web/index.php/redirect mich zu localhost/silex/web/index.php/foo weiterleitet und anzeigt ' foo '. Stattdessen leitet es mich zu localhost/foo weiter.

Ich bin neu bei Silex und vielleicht habe ich alles falsch verstanden. Könnte jemand erklären, wo das Problem liegt? Ist es korrektes Verhalten und sollte es für absolute Pfade umleiten? Danke.

%Vor%     
user2219435 03.03.2014, 09:20
quelle

3 Antworten

23

Die URL redirect erwartet, dass eine URL an eine Route weitergeleitet wird, keine In-App-Route. Probieren Sie es so:

%Vor%     
Maerlyn 03.03.2014, 10:30
quelle
4

Bei internen Weiterleitungen, die die angeforderte URL nicht ändern, können Sie auch eine Unteranfrage verwenden:

%Vor%

Siehe auch Erstellen von Unteranforderungen .

    
Ralf Hertsch 03.03.2014 10:55
quelle
1

Bis zu "silex/silex": ">= 2.0" können Sie mit einem nativen Merkmal eine URL basierend auf dem Routennamen erstellen.

Sie können ersetzen:

%Vor%

Von:

%Vor%

Verwenden Sie es dann zum Umleiten:

%Vor%

Eine weitere Möglichkeit besteht darin, ein benutzerdefiniertes Merkmal zu erstellen, um direkt mit einem Routennamen umzuleiten:

%Vor%

Fügen Sie Ihrer Anwendungsdefinition das Merkmal hinzu:

%Vor%

Dann benutze es wo immer du es brauchst:

%Vor%     
Flo-Schield-Bobby 03.12.2016 12:42
quelle

Tags und Links