Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Redirect Problem bei IIS 7.5 und PHP

Mitglied: Airler

Airler (Level 1) - Jetzt verbinden

25.10.2013, aktualisiert 20:20 Uhr, 2200 Aufrufe, 1 Kommentar

Einen schönen guten Abend,

ich hoffe ihr könnt mir helfen, da ich zur Zeit mit dem Problem nicht mehr weiterkomme.

Es geht darum das ich einen IIS (war Anforderung) habe auf dem ich zusätzlich noch PHP installiert habe um eine PHP Anwendung zum laufen zu bringen.
Die PHP Anwendung arbeitet mit Weiterleitungen, zum Beispiel wenn man die Seite aufruft und noch nicht eingeloggt ist wird man zuerst auf die Login Seite weitergeleitet.
Dies klappt auf einem Apache Server auch ohne Probleme nur auf dem IIS macht das ganze zicken...

Und zwar ergibt sich das Phänomen, das man bei Aufruf der Seite dann wie folgt "weitergeleitet" wird:
Aufruf von http://sub.domain.de leitet auf http://sub.domain.de\/login.php weiter. (Ergebnis aus Firefox
Derselbe Aufruf im IE und einigen anderen Browsern ruft http://sub.domain.de//login.php hervor.

Die zweite Variante sorgt zwar schon dafür, das der Besucher auf der Webseite landet, aber schön ist sowas trotzdem nicht, viel mehr Kopfzerbrechen bereitet mir allerdings die erste Variante. Diese sorgt - wen wunderts - für einen Seitenladefehler...

Das Script, das für die Weiterleitung verantwortlich ist sieht wie folgt aus:
01.
<?php
02.
	session_start();
03.
	
04.
	$hostname = $_SERVER['HTTP_HOST'];
05.
	$path = dirname($_SERVER['PHP_SELF']);
06.
	$script = $_SERVER['PHP_SELF'];
07.
	
08.
	if (isset($https) && ($https == true)) {
09.
		$protocol = 'https';
10.
	} else {
11.
		$protocol = 'http';
12.
	}
13.
	
14.
	if (!isset($_SESSION["username"]) || !$_SESSION['username'])
15.
	{
16.
		header('Location: '.$protocol.'://'.$hostname.($path == '/' ? '' : $path).'/login.php'.($script == '/index.php' ? '' : '?ref='.$script));
17.
	}
18.
?>
Eine kurze Erläuterung: ich hole mir zunächst das aufgerufene Script, den Pfad und den Hostnamen und leite den Besucher je nach Einstellung auf die http bzw. die https Seite weiter.

Im IIS habe ich "keine" weiteren Einstellungen bezüglich Rules, Redirects etc. gemacht, die mir das Verhalten evtl. erklären würden.

Hat einer von Euch vielleicht eine Idee woran das liegen könnte? Bzw. sogar eine Lösung?
Vielen Dank für Tipps im voraus!!!!

Schöne Grüße,
Torben

EDIT: IIS Version 7.5
Mitglied: Airler
26.10.2013 um 20:01 Uhr
Es ist zwar mehr ein Workaround aber mit der folgenden Änderung im Code funktioniert die Umleitung erfolgreich.
Dabei werden Doppelslash und Backslash-Slash Kombinationen durch einen einfachen Slash ersetzt:
01.
//...
02.
        if (!isset($_SESSION["username"]) || !$_SESSION['username'])
03.
	{
04.
		$search_ary = array('\/', '//');
05.
		$url = $hostname.($path == '/' ? '' : $path).'/login.php'.($script == '/index.php' ? '' : '?ref='.$script);
06.
		$url = str_replace($search_ary, '/', $url);
07.
		header('Location: '.$protocol.'://'.$url);
08.
	}
Schöne Grüße,
Torben
Bitte warten ..
Ähnliche Inhalte
Webentwicklung

Lets Encrypt cert Problem nach IIS 7.5 redirect

gelöst Frage von Leo-leWebentwicklung4 Kommentare

Hallo Forum, wir haben einen IIS 7.5 mit Joomla am laufen, soweit so gut. Nun habe ich mir Lets ...

Hosting & Housing

IIS 7.5 Einstellungen

gelöst Frage von mschaedler1982Hosting & Housing2 Kommentare

Hallo zusammen. Ich habe bei uns eine Webseite konfiguriert und möchte nun dass der Inhalt der Webseite über intern ...

Informationsdienste

IIS 7.5 Probleme mit Bindung

gelöst Frage von Leo-leInformationsdienste9 Kommentare

Hallo Forum, ich hoste eine Website per IIS 7.5. Die 'Seite wird sauber per A-Record aufgelöst und ich habe ...

Windows Server

IIS 7.5 Mehrere Sites über https??!

gelöst Frage von TheFstXWindows Server1 Kommentar

Liebe Experten! Seit gestern versuche ich mit Hilfe einiger Anleitungen aus dem Netz, mehrere Sites auf unserem IIS mit ...

Neue Wissensbeiträge
Humor (lol)

"Linux und 5 Gründe Warum man kein Windows verwenden sollte sondern Ubuntu Linux"

Tipp von Snowbird vor 1 TagHumor (lol)8 Kommentare

Gerade gefunden. Ja, ist etwas älter, aber irgendwie lustig?

Humor (lol)

"Warum Linux in einer vernetzten Welt einfach keinen Komfort bietet!"

Tipp von Snowbird vor 2 TagenHumor (lol)13 Kommentare

Ein interessanter Einblick warum Linux nichts für Geräteübergreifende Arbeit ist :)

Humor (lol)
Zuviel Speicher ist ungesund. :-)
Tipp von Lochkartenstanzer vor 2 TagenHumor (lol)17 Kommentare

Moin Kollegen, Heute hatte ich ein ungewöhnliches Aha-Erlebnis: Über das Wochenende habe ich einen einen 6 Jahre alten Bare-Metal ...

Windows Update

KB4517297 verfügbar, behebt Fehler in VB6 VBA VBScript

Information von sabines vor 2 TagenWindows Update

Das Update behebt mögliche Fehler in VB6, VBA und VBScript, die durch das Update KB4512486 vom August entstanden sind. ...

Heiß diskutierte Inhalte
Router & Routing
Deinstalliertes Geräte wird in FritzBox noch immer als verbundenes Gerät angezeigt
gelöst Frage von imebroRouter & Routing18 Kommentare

Hallo, in meiner FritzBox 7490 wird im Bereich "Funknetz" ein Gereät bei den verbundenen Geräten angezeigt, wobei ich nicht ...

Windows 10
Windows 10 druckt nicht mehrere Kopien?
Frage von StefanKittelWindows 1015 Kommentare

Hallo, ich hatte gerade einen Anruf eines Kunden. Sein neuer PC (Win 10 1903) druckt nicht mehr mehrere Seiten ...

Verschlüsselung & Zertifikate
Mit BitLocker verschlüsselte Festplatte löschen?
gelöst Frage von SnowbirdVerschlüsselung & Zertifikate14 Kommentare

Hallo, ich habe eine mit Bitlocker verschlüsselte externe Festplatte. Diese möchte ich gerne löschen sodass nichts mehr auffindbar ist. ...

Sonstige Systeme
Ist es möglich ein ISDN-Telefon an einen analogen Anschluss anzuschließen?
Frage von cramtroniSonstige Systeme14 Kommentare

Also anders herum geht es ja, da gibt es ja diese Adapter von RJ11 auf TAE-F, aber gibt es ...