Geschrieben von: Sven
Veröffentlicht am: 14.06.2013 13:16 Uhr
Bewertung:

Wer bereits mod_rewrite erfolgreich verwendet hat, könnte nach der Benutzung eines Strato Managed Server schnell frustriert sein und sich fragen, was hier falsch läuft. In dieser Anleitung erfahren Sie, wie man bei Strato die SEO Einstellung „URL-Rewrite nutzen“ von Joomla fehlerfrei verwendet.

Anzeige

Normale Vorgehensweise:

Um bei Joomla die SEO Einstellung „URL-Rewrite nutzen“ ohne Fehlermeldung auf „Ja“ stellen zu können, wird normalerweise wie folgt vorgegangen:

  1. Über ein beliebiges FTP-Programm mit dem Server verbinden und das Joomla Verzeichnis auswählen.
  2. Die Datei „htaccess.txt“ vom Joomla Hauptverzeichnis auf den lokalen Computer herunterladen.
  3. Mit einem Texteditor die Datei „htaccess.txt“ in “.htaccess“ umbenennen (Bei Windowseditor Dateityp auf „alle Dateien“ stellen).
  4. Die nun vorhandene Datei „.htaccess“ in das Joomla Hauptverzeichnis hochladen.
  5. Die Einstellung „URL-Rewrite nutzen“ in der Joomla Administration aktivieren.
  6. Freuen, dass die URLs jetzt um den Teil „index.php“ gekürzt sind.

Vorgehensweise bei Strato Managed Servern:

Wenn wie oben beschrieben vorgegangen wird, erscheint bei Strato allerdings anstelle Ihrer Website folgende Meldung „500 interner Serverfehler“.

In der error.log Datei sollten Sie nun die folgende Fehlermeldung finden:

„Option FollowSymLinks not allowed here”

Wird nun in der “.htaccess-Datei” die Zeile „Options +FollowSymLinks“ durch ein vorangestelltes Raute-Zeichen (#) auskommentiert, erscheint beim Aufruf der Startseite keine Fehlermeldung mehr. Indem Sie mit dem Mauszeiger über einen Ihrer Links fahren, zeigt Ihnen Ihr Browser auch schon gekürzte Links an, nach dem anklicken jedoch, erscheint 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, webmaster @ IP 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.

Additionally, a 500 Internal Server Error error was encountered while trying to use an

ErrorDocument to handle the request.

Die error.log Datei spuckt den folgenden Fehler aus:

Request exceeded the limit of 10 internal redirects due to

probable configuration error. Use 'LimitInternalRecursion' to increase the limit if

necessary. Use 'LogLevel debug' to get a backtrace., referer:

Für die Beseitigung dieser Meldungen, ist eine weitere Änderung in der „.htaccess-Datei“ nötig. Öffnen Sie die Datei und suchen die Zeile „# RewriteBase /“. Durch das einkommentieren dieser Zeile (durch entfernen des Raute-Zeichens (#) vor dem Eintrag), wird der Fehler behoben.

Zusammenfassung:

  1. Prinzipiell die normale Vorgehensweise verwenden
  2. .htaccess-Datei öffnen
  3. „Options +FollowSymLinks“ in „# Options +FollowSymLinks“ ändern
  4. „# RewriteBase /“ in „RewriteBase /“ ändern
  5. Speichern und hochladen

Nun sollten alle Links ordnungsgemäß funktionieren.

Hat Ihnen meine Anleitung weitergeholfen?

😀
Dann würde ich mich sehr über ein freiwilliges Dankeschön via PayPal freuen!



Vielen Dank, für Ihre Unterstützung.

Kommentare: (26)

02.09.2013 12:23 Uhr
Super !!
Was habe ich danach gesuch. :D
http://www.webkreation-online.de
Chrischtian
30.12.2013 13:18 Uhr
Hallo,

diese Anleitung hat mir sehr geholfen. Vielen Dank! Weiter so.

Gruß
Chrischtian
30.12.2013 13:56 Uhr
Das freut mich, danke für das Feedback.

Gruß

Sven
https://www.anleitung24.com
Michael Wassermann
09.02.2014 19:02 Uhr
Das war die letzte Hoffnung. Vielen Dank.
05.02.2015 11:26 Uhr
Hi,

funktioniert auch in 2015 noch

DANKE
http://www.iomicron.de
05.02.2015 13:16 Uhr
Gerne ;-)
https://www.anleitung24.com
02.03.2015 22:41 Uhr
Einfach Klasse, vielen herzlichen Dank für die Anleitung, klappt wunderbar.
http://www.svdornach.de
15.03.2015 19:31 Uhr
Super Anleitung, aber bei mir fuzt es leider nicht. Mein Hoster ist Strato, ggf. liegst an dem...

Trotzdem Danke!
http://www.eh-raubling.de
16.03.2015 17:34 Uhr
Hallo Florian,

handelt es sich bei dem bestellten Produkt ebenfalls um einen Managed Server oder um ein anderes Produkt von Strato?

Gruß

Sven
https://www.anleitung24.com
07.06.2015 01:37 Uhr
Hallo Sven,

versuche momentan die Seite auf einen Managed Server von Strato zu spielen. Klappt auch alles: Normale Joomla Seite ist erreichbar. Und dann nachdem die Sicherung (mit SEO Einstellung „URL-Rewrite nutzen“) mit Akeeba Kickstart aufgespielt wurde ----500 Internal Server Error.
Nach Abändern der htaccess-Datei ist die Seite nicht mehr erreichbar Fehler 404.

Hast du eine Ahnung warum?

Gruß, Hugo
http://www.wsba.de
07.06.2015 13:57 Uhr
Hallo Hugo,

mit der Akeeba Sicherung kenne ich mich leider nicht aus. Ich weiß also auch nicht, um was sich die Erweiterung alles bei der Wiederherstelltung kümmert. Kann natürlich gut sein, dass das Problem hier liegt.

Generell wären ein Paar Infos hilfreich:

Erscheint der Fehler 404 nur im Frontend oder kommst du auch nicht mehr in den Adminbereich?

Welche Joomla Version verwendest du?

Hat die Akeeba Rücksicherung schonmal irgendwo bei dir funktioniert oder ist dies der erste Einsatz?

Als Test könntest du natürlich versuchen, ob es ohne Rewrites auch diese 404 Fehlermeldung gibt. Somit kann man schonmal sehen, ob es irgendetwas mit der .htaccess-Datei zu tun haben könnte.

Um das URL-Rewrite ohne Backend Zugriff zu deaktivieren, muss man die configuration.php verändern. Diese findet sich im Hauptverzeichnis der Joomla Installation. Die Datei runterladen und mit beispielsweise Notepad++ öffnen und den Wert "public $sef_rewrite" auf "0" setzen und wieder hochladen. Später einfach wieder auf "1" setzen oder über das Backend aktivieren.

Wenn du schonmal in der configuration.php bist, solltest du auch prüfen, ob dort der richtige Nutzername, Datenbankname und das richtige Passwort eingetragen ist. Könnte sein, dass Akeeba die Datei ersetzt hat und somit die Werte nicht stimmen.

Ich hoffe ich konnte bis hierher zumindest ein bisschen weiterhelfen.

Gruß

Sven
https://www.anleitung24.com
07.06.2015 15:11 Uhr
Hi Sven,

danke für die schnelle Antwort.
Also den Fehler 404 bekomme ich dann im Frontend und im Backend
Benutze Joomla 3.4.1 und die Rücksicherung funktioniert über den Strato Hoster tadellos.
Werde deine Tips gleich mal umsetzen und gucken ob sich was ändert.

Gruß, Hugo
http://www.wsba.de
07.06.2015 16:48 Uhr
Es hat sich nix geändert!
Merkwürdiger Weise kann ich nach der Grundinstallation
das Url-Rewrite einstellen, die htaccess-Datei zuvor umbenennen (ohne etwas zu ändern) und es funktioniert auf dem Strato Server.
Hast du eventuell eine andere Idee, wie ich die Seite ohe Akeeba auf den Server bekomme? Hatte bisher nie was anderes versucht.

Gruß, Hugo
http://www.wsba.de
07.06.2015 19:03 Uhr
Hallo nochmal,

ok, vielleicht handhabt Strato es ja bei den neuesten Managed Servern mittlerweile anders, was die HTACCESS Einstellungen angeht. Bei mir ist es jedenfalls immer noch so, wie in der Anleitung beschrieben.

Ich gehe in etwa so vor, um eine Seite auf einen neuen Server zu übertragen:

1. Komplettes Joomla Verzeichnis vom alten Server per FTP herunterladen (dauert u.U. lange).

2. In PHPmyAdmin einloggen, komplette Datenbank vom Projekt exportieren (standarteinstellungen).

3. Per FTP einen neuen Unterordner im Ordner "HTDOCS" einrichten + Inhalte des letzten Projekts dort hineinkopieren.

4. Auf dem neuen Server eine Subdomain über Strato einrichten, damit man nicht am lebenden Objekt arbeiten muss.

5. Verzeichnisschutz für den neuen Ordner über Strato einrichten, damit Google die Seite nicht unter falschem Namen indexiert und niemand sonst über http darauf zugreifen kann.

6. Die Subdomain auf den neuen Ordner leiten (Strato).

7. Eine neue Datenbank einrichten - in der Regel kein externer Zugriff (Strato).

8. In PHPmyAdmin einloggen, die neue Datenbank anwählen und die alte Datenbank dort importieren (sollte so funktionieren).

9. Die configuration.php mit den neuen Daten bestücken und wieder hochladen ($user, $password, $db für die Datenbank und $log_path, $tmp_path)

10. Seite aufrufen, müsste nun über die neue Subdomain möglich sein.

11. Alles überprüfen und ggf. Anpassungen vornehmen. Die Links sollten beispielsweise gleich aufgebaut sein, wie zuvor.

12. Eventuell FTP-Dateirechte wieder einstellen, wie zuvor.

13. Nochmal alles prüfen.

14. Bei 500er Server Error obige Anleitung ausführen.

15. Wenn alles funktioniert, wie es soll, Verzeichnisschutz auflösen und den Inhalt auf die richtige Domain umleiten.

16. Richtige Domain zum Test aufrufen.

17. Subdomain löschen oder zumindest auf einen anderen (leeren) Ordner umleiten, damit die Seite nicht über 2 Domains erreichbar ist.

Ich hoffe ich habe jetzt auf die Schnelle keinen Denkfehler eingebaut oder etwas wichtiges vergessen.

Gruß

Sven
https://www.anleitung24.com
07.06.2015 20:12 Uhr
Ihr danke dir abermals,

habe es mittlerweile durch # Options +FollowSymLinks (mit Akeeba) hinbekommen dass die Seite zumindest sichtbar wird. Backend funktioniert, Frontend nur ohne Grafik. Sobald ich die Raute vor RewriteBase entferne, kommt der schöne altbekannte Serverfehler. Ich denke das wars mit Strato, weshalb soll ich da weiter herrum probieren, wenn es Alternativen gibt?

Gruß, Hugo
http://www.wsba.de
07.06.2015 21:02 Uhr
Hallo Hugo,

wenn ich das jetzt so lese ... hätte vorhin ja die Änderung in der configuration.php (sef_rewrite =0) eine Besserung bringen müssen. Hast du das garnicht druchgeführt?

Probier doch nochmal spaßeshalber aus, ob es funktioniert, wenn du einfach die htaccess datei durch eine andere von den funktionierenden Testseiten ersetzt. Evtl. ist in der aktuellen noch eine andere Einstellung, die negative Auswirkungen hat. Andere Datei natürlich vorher sichern.

Eines kannst du dann auch noch probieren:
PHP-Modus auf FastCGI statt FastCGI+eAccelerator stellen (Strato PHP-Einstellungen). Wenn dies keine Änderung bringt (im Bezug auf halb angezeigte Websites oder gar weiße Seiten), sollte hier die Einstellung wieder zurückgeändert werden, da es mit eAccelerator schneller läuft.

Zu Strato:
Klar, die Strato Managed Server sind schon ein bisschen "lustig" aber preislich kann man nicht meckern. Sind aber nur bedingt geeignet für jemanden, der viele Kundenprojekte darauf ablegen möchte. Weil Updates auch tagsüber eingespielt werden und nicht in den Nachtstunden. Der Support ist auch nicht der allerschnellste, kann man bei dem Preis aber auch nicht erwarten. So zumindest meine Erfahrung.

Gruß

Sven
https://www.anleitung24.com
08.06.2015 18:07 Uhr
Danke Sven,

hatte ich alles versucht! Vergebens! Ich wechsel zu Alfahosting. Aber super nett, dass du dich meiner angenommen hast.

Gruß, Hugo
http://www.wsba.de
08.06.2015 23:13 Uhr
Hallo Hugo,

gerne. Schade, dass ich Dir nicht weiterhelfen konnte. Das ist sicherlich nur eine Kleinigkeit.

Ich wünsche Dir viel Erfolg bei Alfahosting.

Gruß

Sven
https://www.anleitung24.com
12.01.2017 12:47 Uhr
U made my day!!!

Vielen Dank für diesen Beitrag, hast meinen Tag gerettet.
http://www.maximusweb.org
DooM
08.06.2020 13:06 Uhr
funktioniert nicht mit strato. neuestes joomla, php 7.3. schon alles versucht, index.php in der URL krieg ich ums verrecken nicht weg. strato ist so scheisse.
08.06.2020 13:56 Uhr
Hallo DooM,

was meinst du mit alles?

Prüfe auch unbedingt im Kundencenter, ob du nicht aus Versehen die URL-Manipulation per Apache Modul (mod_rewrite) deaktiviert hast.

Gruß

Sven
https://www.anleitung24.com
DooM
09.06.2020 03:06 Uhr
@Sven

ich kannn keine einstellmöglichkeiten im kundencenter sehen, habe as Hosting Basic-paket auf php-"einstellungen" kann man nur die php-version einstellen und den php-booster ein/ausschalten..sonst ist da nix. oder überseh ich hier was...

mit alles meinte ich z.b.: Options +FollowSymLinks auskommentieren testweise oder RewriteBase / oder zum testen nur stratos beispielcode eingesetzt:

RewriteEngine on
RewriteCond %{http_host} ^wunschname.de [nc]
RewriteRule ^(.*)$ http://www.wunschname.de/$1 [r=301,nc]

funktioniert auch nicht.

strato schreibt aber: "mod_rewrite ist in allen aktuellen STRATO Hosting Paketen installiert und kann von Ihnen aktiviert werden."

ne, ist es wohl nicht...aktivieren? WO? muss strato anschreiben oder wechseln oder hat du eine idee??.Strato is so beengend und unflexibel..
09.06.2020 13:19 Uhr
Hallo DooM,

persönlich kenne ich von Strato nur den Managed Server, also habe ich nun selbst mal bei Strato nachgeschaut. Demnach ist mod_rewrite wohl in den Hosting-Paketen prinzipiell immer nutzbar. Du musst es wohl nicht extra im Kundencenter aktiv schalten.

Schau dir dazu mal diesen Beitrag von mir an. Wenn du das so machst, müsste es funktionieren.

Die oben genannte Geschichte mit dem Ein-/Auskommentieren, behebt lediglich den 500er Error, der damals bei mir auftrat. Wenn dieses Problem bei dir nicht auftritt, kannst du die Einstellungen i. d. R. so belassen, wie Joomla das vorgibt.

Gruß

Sven
https://www.anleitung24.com
DooM
18.06.2020 12:25 Uhr
So, mit dieser htaccess klappt es endlich nach TAGEN mit strato (hosting basic paket, php 7.3.18, joomla 3.9.19):

***********************
Für jeden der das hier liest und auch ein Problem hat mit STRATO und Joomlas SEF (index.php weg aus den URL's): DIESE HTACCESS FUNKTIONIERT. Note: in Allen Hosting-Paketen von Strato is mod_rewrite bereits installiert, also daran liegt es nicht
***********************
inhalt der .htaccess fpr joomla:


DirectoryIndex index.php
RewriteEngine On
RewriteBase /

########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
## Deny access to extension xml files (uncomment out to activate)
#
#Order allow,deny
#Deny from all
#Satisfy all
#

## End of deny access to extension xml files
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a tag in URL
RewriteCond %{QUERY_STRING} (\|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]






OPTIONAL (leitet alle nicht WWW anfragen deiner domain zu WWW, um. Diesen code gleich nach "RewriteBase /" einfügen und DEINEDOMAIN mit deiner domain ersetzen (u. U. auch .de):


RewriteCond %{HTTP_HOST} ^DEINEDOMAIN.de [NC]
RewriteRule ^(.*)$ http://www.DEINEDOMAIN.de/$1 [L,R=301]



------
good luck.
19.06.2020 15:10 Uhr
Freut mich sehr, dass du eine Lösung gefunden hast und es nun doch noch geklappt hat. Strato scheint wohl überall etwas anders zu machen. Danke, dass du deine Lösung hier gepostet hast.
https://www.anleitung24.com
DooM
19.06.2020 20:19 Uhr
für die nachwelt, nochmal zusammengefasst: eins ist auch wichtig zu wissen: die standard htaccess die mit joomla dabei ist funktioniert so NICHT. also .htaccess.txt in .htaccess umbenennen reicht nicht bei strato. bei vielen hostern reicht das, aber natürlich nicht bei strato, denn strato mag joomla nicht sondern nur das langweilige, umständliche wordpress. seit jahren schon. benutzt die htaccess, die ich oben gepostet habe. die funktioniert wie gesagt auf anhieb.

strato, juni 2020, hosting basic paket, php 7.3.18, joomla 3.9.19

so long....

Kommentar schreiben:

Noch 5000 Zeichen übrig.
Hinweise zur Verarbeitung Ihrer Angaben und Widerspruchsrechte finden Sie in unserer Datenschutzerklärung.