|
|
Sensei


: 24.01.2009 : 398 : Hannover
|
| : 26.08.2010, 17:10 : Probleme mit mod_rewrite |
|
|
Hallo zusammen,
ich will bei einer meiner statischen Seiten die URLs etwas verschönern und statt den Dateien und deren Endungen nur den Namen der Datei haben.
Also mal als Beispiel:
Ausgangs URL: meinedomain.de/datei.php
Mein Ziel: meinedomain.de/datei/
Ich habe mich auch schon mal etwas umgesehen und einen Code gefunden, der eigentlich funktionieren sollte:
| Code: |
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^/?([a-zA-Z0-9]+)$ $1.php [L]
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^/?([a-zA-Z0-9]+)$ $1.html [L]
|
da das nicht funktioniert hat habe ich mich noch einmal umgesehen.
| Code: |
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule ^([_0-9a-z-]+)?/?$ $1.php [QSA]
</IfModule> |
getestet, was bei .html super funktioniert geht bei .php überhaupt nicht.
Parallel hab ich versucht bei einem Fehler auf eine Fehlerseite umzuleiten, was aber auch nicht ganz geklappt hat.
Als Code habe ich da für das hier genommen:
| Code: |
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .? /404.php [L] |
ich hab übrigens immer erst mit
| Code: |
RewriteEngine On
RewriteBase / |
angefangen so das es funktionieren sollte.
Ich wäre froh, wenn ihr mir da helfen könntet, habe es bereits über Twitter versucht, aber da wusste auch keiner Rat.
netheweb.de - Der Blog für Webmaster und Freelancer | 1Deluxe.eu - Hosting on a higher level! |
|
| Nach oben |
|
 |
chris21

: 10.04.2005 : 1917
|
| : 26.08.2010, 18:11 : Probleme mit mod_rewrite |
|
|
Also Fehlerseiten solltest Du über eine ErrorDocument Regel klären (bzw. Regelsatz).
Zum anderen: Kann es zufällig sein, dass die Seite bei 0&0 gehostet ist?
Da gibt es einige Probleme mit php Dateien unterm Domain-Root und deren Umleitungen. Falls es nicht daran liegt, solltest Du uns mal genauer erklären, was Du mit
" geht bei .php überhaupt nicht. "
meinst. Keine interne Umleitung? Fehlermeldung? Fehlermeldung im Apache Error log? Sind in den PHP Dateinamen Großbuchstaben drin?
Einfach mal abwarten und Tee trinken. Das wird scho'.
Auch ne schöne Seite: klick. |
|
| Nach oben |
|
 |
Sensei


: 24.01.2009 : 398 : Hannover
|
|
| Nach oben |
|
 |
chris21

: 10.04.2005 : 1917
|
| : 26.08.2010, 22:22 : Probleme mit mod_rewrite |
|
|
Wie siehts mit den Options im vhost aus? FollowSymLinks?
| : |
und beim zweiten wird dann zwar das php abgeschnitten, aber nicht umgeleitet.
|
Wodurch wird das php abgeschnitten?
Durch den Code
| Code: |
RewriteRule ^([_0-9a-z-]+)?/?$ $1.php [QSA]
|
wird jedenfalls das php nicht abgeschnitten sondern intern hinzugefügt.
Wodurch wird es denn abgeschnitten?
Poste mal deine zusammenhängende htaccess, dann können wir dem auf den Grund gehen.
Einfach mal abwarten und Tee trinken. Das wird scho'.
Auch ne schöne Seite: klick. |
|
| Nach oben |
|
 |
Sensei


: 24.01.2009 : 398 : Hannover
|
| : 27.08.2010, 12:13 : Probleme mit mod_rewrite |
|
|
Hi,
wie checke ich das mit dem FollowSysLinks?
Ansonsten sieht die .htaccess datei im Moment wie folgt aus:
| Code: |
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule ^([_0-9a-z-]+)?/?$ $1.php [QSA]
</IfModule>
|
Dabei wird mir dann folgender Fehler angezeigt:
The requested URL /.php was not found on this server.
Bei dem anderen passiert überhaupt nichts wie bereits erwähnt.
netheweb.de - Der Blog für Webmaster und Freelancer | 1Deluxe.eu - Hosting on a higher level! |
|
| Nach oben |
|
 |
chris21

: 10.04.2005 : 1917
|
| : 27.08.2010, 12:57 : Probleme mit mod_rewrite |
|
|
Ah, ok
Passiert das beim Aufruf von www.example.com/ ?
Das Fragezeichen hinter der Klammer bedeutet ja, dass der Klammerinhalt vorhanden sein darf oder nicht.
Was passiert denn, wenn Du folgendes schreibst:
| Code: |
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule ^([_0-9a-z-]+)/?$ $1.php [QSA]
</IfModule>
|
Die bisherige Rule war erfüllt, wenn z.B. "" aufgerufen wird, ebenso bei "/" oder bei "blabla77" oder "blabla-bla2" oder "blabla/"
Durch entfernen des Fragezeichens habe ich die ersten beiden Fälle "" und "/" rausgenommen, die genau zu dem Fehler mit dem "/.php not found" geführt haben.
Bzgl. passiert überhaupt nichts, ändere den Code mal in
| Code: |
<IfModule mod_rewrite.c>
RewriteEngine on
Options +FollowSymLinks
RewriteBase /
RewriteRule ^([_0-9a-z-]+)/?$ $1.php [QSA]
</IfModule>
|
Einfach mal abwarten und Tee trinken. Das wird scho'.
Auch ne schöne Seite: klick. |
|
| Nach oben |
|
 |
Sensei


: 24.01.2009 : 398 : Hannover
|
| : 27.08.2010, 14:11 : Probleme mit mod_rewrite |
|
|
Also wenn ich deinen ersten Code nutze,
wird die Seite domain.com/ angezeigt, aber wenn ich auf Unterseiten gehe sehen alle noch so aus wie vorher also domain.com/datei.php
Wenn ich den zweiten Code hochladen, bekomme ich von meinem Server die folgende Fehlermeldung:
| : |
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, [no address given] and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log. |
Kann das bedeuten, dass er +FollowSymLinks nicht versteht und wenn ja wie kann ich das an meinem Server aktivieren.
netheweb.de - Der Blog für Webmaster und Freelancer | 1Deluxe.eu - Hosting on a higher level! |
|
| Nach oben |
|
 |
chris21

: 10.04.2005 : 1917
|
| : 27.08.2010, 14:19 : Probleme mit mod_rewrite |
|
|
Der Fehler bedeutet,
dass die Du die AllowOverride Direktive in Deinem vhost falsch gesetzt hast, daher der 500er Internal Server Error.
Ist es etwa ein managed vServer?
Ansonsten solltest Du Dich da nochmal an die Konfiguration des vhosts machen. Und eigentlich auch wissen, was Du dort machst als root
PS: Wie sind die Dateien denn verlinkt? Warum domain.com/datei.php ? Sind die etwa noch mit php verlinkt? Dann bringt es natürlich gar nichts...
PS: Ist das Modul mod_speling bei Dir aktiv?
Einfach mal abwarten und Tee trinken. Das wird scho'.
Auch ne schöne Seite: klick. |
|
| Nach oben |
|
 |
Sensei


: 24.01.2009 : 398 : Hannover
|
| : 27.08.2010, 14:30 : Probleme mit mod_rewrite |
|
|
Der Tipp mit dem verlinken hat glaube ich geholfen
Das Modul mod_speling finde ich zwar nicht unter den aktivierten, aber die Seiten werden mir mit deinem ersten Code trotzdem richtig angezeigt, wenn ich die Verlinkung anpasse.
Damit wäre das Problem für mich erst einmal gelöst danke dir für deine hilfe und sorry das ich nicht von dem Zeug wenig Ahnung habe. Habe mich damit noch nie beschäftig
netheweb.de - Der Blog für Webmaster und Freelancer | 1Deluxe.eu - Hosting on a higher level! |
|
| Nach oben |
|
 |
chris21

: 10.04.2005 : 1917
|
| : 27.08.2010, 14:37 : Probleme mit mod_rewrite |
|
|
| : |
Das Modul mod_speling finde ich zwar nicht unter den aktivierten, aber die Seiten werden mir mit deinem ersten Code trotzdem richtig angezeigt, wenn ich die Verlinkung anpasse.
|
mod_speling sollte auch nicht aktiv sein. Nichts nervt mehr, als wenn man mod_rewrite verwendet und im Hintergrund der Apache über mod_speling noch ne Content Negotiation startet.
Aber schön, dass das Problem gelöst ist - ich hoffe nur, dass nicht Du sondern P. bei Euch für den technischen Betrieb der Server zuständig ist... 
Einfach mal abwarten und Tee trinken. Das wird scho'.
Auch ne schöne Seite: klick. |
|
| Nach oben |
|
 |