macpat
Tue. 27. April 2010, 09:10
Hi zusammen!
Ich habe in Sefrengo auf mod_rewirte "2" umgestellt und am Server sind alle mod_rewrite Dinge lt. Provider aktiviert.
Das mod_rewrite scheint auch irgendwie zu funktionieren, leider nur bei der ersten Seite.
Habe jetzt die Standard htaccess.txt in .htaccess umbenannt und in das Projektverzeichnis geladen und jetzt kommt der Fehler
500.
Was kann ich tun...? Hab auch schon versucht die .htaccess zu modifizieren, funktioniert leider auch nicht.
Options +FollowSymLinks
RewriteEngine On
#
# Sefrengo numeric rewrite
#
#cats
RewriteRule ^cat([0-9][0-9]*)-([1-9][0-9]?)\.html(&.*)? index.php?lang=$2&idcat=$1&$3 [QSA,L]
RewriteRule ^cat([1-9][0-9]*)\.html(&.*)? index.php?idcat=$1&$2 [QSA,L]
#pages
RewriteRule ^page([1-9][0-9]*)-([1-9][0-9]?)\.html(&.*)? index.php?lang=$2&idcatside=$1$3 [QSA,L]
RewriteRule ^page([1-9][0-9]*)\.html(&.*)? index.php?idcatside=$1$2 [QSA,L]
macpat
Tue. 27. April 2010, 10:52
Ich bin für eine Hilfe sehr dankbar! Hab mir schon die Threads die das Thema betreffen durchgelesen, aber nicht wirklich was gefunden.
saschapi
Tue. 27. April 2010, 11:03
macpat
Tue. 27. April 2010, 11:29
Danke für deine Antwort. Das mit google.de funktioniert einwandfrei.
Also der Server ist, so denk ich, richtig konfiguriert.
ZITAT(saschapi @ Tue. 27. April 2010, 12:03)
amk
Tue. 27. April 2010, 11:41
hast du's schon mal mit nem "RewriteBase /" in der htaccess probiert!?
Taturo
Tue. 27. April 2010, 16:08
Je nach Provider kann es auch sein, dass du vor index.php einen / einfügen musst. Bei 1&1 sieht die htaccess z.B. so aus
QUELLTEXT
Options +FollowSymLinks
RewriteEngine On
#
# ERROR DOCUMENTS - define their if you want
#
# ErrorDocument 404 /my-error-page.html
# ErrorDocument 401 /my-error-page.html
# ErrorDocument 403 /my-error-page.html
# ErrorDocument 500 /my-error-page.html
# ErrorDocument 400 /my-error-page.html
#
# Sefrengo numeric rewrite
#
#cats
RewriteRule ^cat([0-9][0-9]*)-([1-9][0-9]?)\.html(&.*)? /index.php?lang=$2&idcat=$1&$3 [QSA,L]
RewriteRule ^cat([1-9][0-9]*)\.html(&.*)? /index.php?idcat=$1&$2 [QSA,L]
#pages
RewriteRule ^page([1-9][0-9]*)-([1-9][0-9]?)\.html(&.*)? /index.php?lang=$2&idcatside=$1$3 [QSA,L]
RewriteRule ^page([1-9][0-9]*)\.html(&.*)? /index.php?idcatside=$1$2 [QSA,L]
#
# Sefrengo 'spoken url support' rewrite
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?sf_rewrite=$1 [L,QSA]
Für mod_rewrite 2 brauchst du vor allem diesen Teil, der fehlt bei dir (zumindest in deinem Beitrag)
QUELLTEXT
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?sf_rewrite=$1 [L,QSA]
Gruss,
Andreas
amk
Tue. 27. April 2010, 17:02
anmerkung: für mod_rewrite 2 braucht er nur diesen teil ... und natürlich die ersten 2 zeilen.
macpat
Wed. 28. April 2010, 08:36
Also, vielen Dank erst mal für eure Antworten.
Ganz funktioniert es jedoch nicht.
Meine .htaccess Datei im Projektordner beinhaltet folgendes:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?sf_rewrite=$1 [L,QSA]
Im Sefrengo steht mod_rewrite auf 2.
Jetzt krieg ich aber den Fehler Error 500 wenn ich das Projektverzeichnis aufrufe.
An was könnte das liegen.
Taturo
Wed. 28. April 2010, 08:46
Hast du es mal mit dem / vor index.php ausprobiert?
macpat
Wed. 28. April 2010, 09:01
ZITAT(Taturo @ Wed. 28. April 2010, 09:46)
Hast du es mal mit dem / vor index.php ausprobiert?
Meine .htaccess sieht jetzt so aus:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?sf_rewrite=$1 [L,QSA]
also mit dem Schrägstrich. Kriege trotzdem den Error 500
Taturo
Wed. 28. April 2010, 09:18
Lösch mal den Cache und wähl danach "Gesprochene URLs neu generieren" aus. Danach nochmal mit beiden Versionen der htacess ausprobieren. Wenn das nix bringt die Orginal htaccess Datei hochspielen und mod_rewrite 1 einschalten.
Und berichten.
macpat
Wed. 28. April 2010, 09:20
ZITAT(Taturo @ Wed. 28. April 2010, 10:18)
Lösch mal den Cache und wähl danach "Gesprochene URLs neu generieren" aus. Danach nochmal mit beiden Versionen der htacess ausprobieren. Wenn das nix bringt die Orginal htaccess Datei hochspielen und mod_rewrite 1 einschalten.
Und berichten.
Danke für die Info, das versuch ich. Nur wo kann ich "Gesprochene URLs neu generieren" wählen?
Taturo
Wed. 28. April 2010, 12:04
in der Seitenübersich, da wo auch der cache gelöscht wird
paulinsche
Wed. 28. April 2010, 13:29
… und wie AMK schon geschrieben hat, hast du
QUELLTEXT
RewriteBase /
in die .htaccess eingefügt?
Meine .htaccess sieht so aus:
QUELLTEXT
Options +FollowSymLinks
RewriteEngine On
#
# ERROR DOCUMENTS - define their if you want
#
# ErrorDocument 404 /my-error-page.html
# ErrorDocument 401 /my-error-page.html
# ErrorDocument 403 /my-error-page.html
# ErrorDocument 500 /my-error-page.html
# ErrorDocument 400 /my-error-page.html
# Anpassung für 1&1-Server
RewriteBase /
# Slash am Schluss erzwingen
RewriteCond %{REQUEST_URI} ^/[^\.]+[^/]$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1/ [R=301,L]
# www erzwingen
RewriteCond %{HTTP_HOST} ^domain\.de$ [NC]
RewriteRule ^(.*) http://www.domain.de%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^domain\.de$ [NC]
RewriteRule ^(.*) http://www.domain.de/ [L,R=301]
#
# Sefrengo 'spoken url support' rewrite
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?sf_rewrite=$1 [L,QSA]
und beinhaltet zudem, dass an alle Ordner ein Slash angefügt wird und generell auf www. umgeleitet wird.
Es gibt allerdings Server, wo das ein oder andere nicht funktioniert. Auf meinem Hauptserver läuft das aber einwandfrei.
macpat
Wed. 28. April 2010, 14:10
Danke aber ich krieg trotz der RewriteBase den 500er Fehler
macpat
Wed. 28. April 2010, 15:43
Eine grundlegende Frage. Muss die .htaccess ins Hauptverzeichnis oder ins Projektverzeichnis? Bei mir liegt die Datei mit dem Namen .htaccess im Projektverzeichnis
macpat
Wed. 28. April 2010, 16:00
Bei mir steht auch in der Seitenübersicht beim Cache löschen nur der 2. Punkte neuen Ordner anlegen.
EDIT: Ach der ist ja nur wenn man 2 aktiviert.
Ohne .htaccess im Projektverzeichnis krieg ich die URL korrekt raus nur halt Fehler 404
Ich checks echt nicht
amk
Wed. 28. April 2010, 21:36
wenn du mit dem projektverzeichnis arbeitest - also deine website per www.domain.ltd/projekt01/ aufgerufen wird, versuch vlt. mal
RewriteBase /projekt01/
nur so 'ne idee ...
p.s.: .htaccess im projektverzeichnis
macpat
Thu. 29. April 2010, 07:17
Danke für eure Antworten! Hab jetzt alles versucht. Es will einfach nicht. Ohne der .htaccess werden die Urls richtig generiert...
Nur die Seiten werden eben nicht gefunden (Fehler 404) sobald ich irgendeine Variante der .htaccess ins Projektverzeichnis lade,
kommt der Fehler 500. Ich verstehs nicht...
Taturo
Thu. 29. April 2010, 14:49
Hallo,
wie ist denn dein Test mit Apache mod_rewrite Support = 1 ausgefallen? Hat das funktioniert?
Was steht unter Administration/Projekte als "Basepath bei UrlRewrite=2" ?
Gruss, Andreas
Tascha
Thu. 29. April 2010, 16:46
Manche WebHoster benötigen die Angabe der RewriteBase Direktive, da diese nicht in der Webserverkonfiguration angegeben wurde.
LösungIn der .htaccess Datei muss folgendes hinzugefügt werden:
RewriteBase /
Wenn Sefrengo in einem Unterverzeichnis installiert ist, muss evtl. noch der Pfad angepasst werden.Hatte das Problem bis eben auch. Der / vor index.php war nicht nötig. Hab nur die .htaccess verändert, im BE das Apache mod_rewrite Support auf 2 gesetzt, gesprochene Urls neu generiert und evìla es funzt.
Greetz Natascha
Probieren geht bekanntlich über studieren
macpat
Mon. 3. May 2010, 14:25
Mod_Rewrite 1 hat ebenfalls nicht funktioniert.
Als Pfad zum Frontend steht beim Projekt /var/www/web94/html/2010/
als HTML-Pfad zum Frontend steht
http://domain.com/2010/Name der Frontenddatei ist index.php
macpat
Mon. 3. May 2010, 14:37
ZITAT(Tascha @ Thu. 29. April 2010, 17:46)
Manche WebHoster benötigen die Angabe der RewriteBase Direktive, da diese nicht in der Webserverkonfiguration angegeben wurde.
LösungIn der .htaccess Datei muss folgendes hinzugefügt werden:
RewriteBase /
Wenn Sefrengo in einem Unterverzeichnis installiert ist, muss evtl. noch der Pfad angepasst werden.Hatte das Problem bis eben auch. Der / vor index.php war nicht nötig. Hab nur die .htaccess verändert, im BE das Apache mod_rewrite Support auf 2 gesetzt, gesprochene Urls neu generiert und evìla es funzt.
Greetz Natascha
Probieren geht bekanntlich über studieren Danke für deine Antwort...
Krieg trotzdem den Fehler 500...
Hab jetzt alles versucht:
1.
CODE
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
#
# Sefrengo 'spoken url support' rewrite
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /2010/index.php?sf_rewrite=$1 [L,QSA]
2.
CODE
Options +FollowSymLinks
RewriteEngine On
RewriteBase /2010/
#
# Sefrengo 'spoken url support' rewrite
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /2010/index.php?sf_rewrite=$1 [L,QSA]
3.
CODE
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
#
# Sefrengo 'spoken url support' rewrite
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?sf_rewrite=$1 [L,QSA]
Und noch 10 andere Varianten.
Es nervt mich echt schon. Warum funktioniert das nicht... Ich dank euch für eure Antworten...
Taturo
Mon. 3. May 2010, 20:35
wenn du magst kannst du mir mal die Zugangsdaten per PM schicken, dann schau ich mir das mal an. Adminzugang zum Backend und ftp.
Gruss, Andreas
Taturo
Tue. 4. May 2010, 09:02
Hallo,
Der Provider lässt Options +FollowSymLinks nicht zu. Ich habe die Zeile auskommentiert. Jetzt klappt es.
Viele Grüsse,
Andreas
Dieses ist eine vereinfachte Darstellung unseres Foreninhaltes. Um die detaillierte Vollansicht mit Formatierung und Bildern zu betrachten, bitte
hier klicken.