XHTMLforum

XHTMLforum (http://xhtmlforum.de/index.php)
-   Serveradministration und serverseitige Scripte (http://xhtmlforum.de/forumdisplay.php?f=80)
-   -   mod_rewrite für sprechende URLs, aber Safari verhält sich merkwürdig (http://xhtmlforum.de/showthread.php?t=69944)

Reginald 01.09.2013 16:38

mod_rewrite für sprechende URLs, aber Safari verhält sich merkwürdig
 
Hallo,

da ich mit mod_rewrite noch nicht so wirklich erfahren bin, suche ich hier um Hilfe.

Also, die Seiten-URLs sehen eigentlich wie folgt aus:
http://domain.tld/index.php?page=profil
und sollen halt in sprechende URLs umgewandelt werden, sprich
http://domain.tld/profil

So sieht meine htaccess-Datei aus:

Code:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)$ /index.php?page=$1 [L]

Das ganze funktioniert im Firefox, Chrome und Opera tadellos. Nur der Safari verhält sich da merkwürdig:
Wenn ich auf der Website im Menü die entsprechende Unterseite anklicke, erscheint erstmal die 404 Seite des Hosters. Jedoch, wenn ich die Seite aktualisiere, erscheint die gewünschte Zielseite. Sie ist also erreichbar, aber immer erst nach einem Refresh. Das gilt auch, wenn ich die Seite direkt ansurfe; sprich ohne Refresh sehe ich keine Seite.

Ich denke, Safari ist hier einfach »kritischer« als die anderen. Daher muss es an der htaccess-Datei liegen.

Ich hoffe, dass mir da jemand weiterhelfen kann.

Gruß, Reginald

threadi 01.09.2013 19:24

mod_rewrite-Anweisungen in einer htaccess-Datei manipulieren lediglich HTTP-Requests an den Apache-Webserver. Wenn ein Browser sich hierbei merkwürdig verhält, liegt es entweder am Cache des Browsers oder an irgendeiner Eigenschaft im HTTP-Header, für die eine mod_rewrite-Anweisung aber nicht verantwortlich ist. Schau dir daher die HTTP-Header mal genau an und vergleiche, ob es einen davon gibt, der vlt. den Safari durcheinander bringt. Diesen müsstest Du dann entweder am Apache manipulieren oder durch einen htaccess-Eintrag (der vermutlich unabhängig von mod_rewrite ist) lösen.

Reginald 01.09.2013 20:20

Danke. Ich habe mir erst die Header angesehen, weil ich das wahrscheinlicher fand, aber im Endeffekt lag es doch am Cache.

Ich weiß, darauf hätte ich selber kommen können, aber irgendwie dachte ich, wenn es um htaccess/mod_rewrite geht, hat das mit dem Client nicht mehr viel zutun.

Vielen Dank nochmal!


Alle Zeitangaben in WEZ +2. Es ist jetzt 04:44 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2021, vBulletin Solutions, Inc.

© Dirk H. 2003 - 2020