Heim > Artikel > Backend-Entwicklung > Wie erfasst man bestimmte URL-Segmente für 301-Weiterleitungen auf Windows-/IIS-Servern mit PHP?
Abrufen der aktuellen Seiten-URL auf Windows/IIS-Servern für PHP-Umleitungen
In Szenarien, in denen WordPress-Installationen in neue Ordner unter Windows/ migriert werden IIS-Server stoßen bei der Einrichtung von 301-Weiterleitungen in PHP auf Herausforderungen bei der Erfassung des spezifischen Segments der URL. In diesem Artikel wird das Problem untersucht und eine Lösung zum Abrufen des gewünschten URL-Teils bereitgestellt.
Das Problem: Leere Zeichenfolgen und abgeschnittene Werte
Häufig vorgeschlagene Lösungen, z. B. die Verwendung von $ _SERVER["REQUEST_URI"], liefert leere Zeichenfolgen auf IIS-Servern. Ebenso gibt $_SERVER["PHP_SELF"] nur „index.php“ zurück und lässt das entscheidende „/post-title/“-Segment der URL weg.
Die Lösung: $_SERVER['PATH_INFO nutzen ']
IIS-Server stellen eine alternative Variable bereit, $_SERVER['PATH_INFO'], die dieses Problem effektiv löst. Diese Variable ruft den Pfad der angeforderten Ressource relativ zum installierten Stammverzeichnis des Servers ab.
Im bereitgestellten Beispiel folgen URLs dem Format „/OLD_FOLDER/index.php/post-title/“, $_SERVER['PATH_INFO '] würde „/post-title/“ ergeben. Dieser Wert kann dann verwendet werden, um die gewünschten Umleitungspfade zu erstellen.
Fazit
Durch die Nutzung von $_SERVER['PATH_INFO'] in IIS-Umgebungen können Entwickler die genau erfassen Für 301-Weiterleitungen erforderliche URL-Segmente, die eine nahtlose Website-Migration und eine ordnungsgemäße Umleitung des Datenverkehrs von alten zu neuen URLs gewährleisten.
Das obige ist der detaillierte Inhalt vonWie erfasst man bestimmte URL-Segmente für 301-Weiterleitungen auf Windows-/IIS-Servern mit PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!