Seite 1 von 1

Umschreiben von URLs aktivieren bei 1&1 (gelöst)

Verfasst: 08.11.2015 12:22
von sepp71
Hallo zusammen,

mein Webspace nebst Datenbank liegt bei 1&1. Leider gelingt es mir nicht, das "Umschreiben von URLs aktivieren" einzustellen.
Im ACP bei Server und Domain unter Pfad-Einstellungen steht:
Umschreiben von URLs aktivieren:
Wenn aktiviert, werden URLs, die ‚app.php‘ enthalten, umgeschrieben, so dass sie keinen Dateinamen mehr enthalten. (z. B. wird app.php/foo zu /foo). Das Modul mod_rewrite des Apache-Webservers ist notwendig, damit dies funktioniert. Wenn diese Option aktiviert wird, ohne dass mod_rewrite verfügbar ist, können URLs deines Boards ungültig werden.
0 Ja X Nein
Es konnte nicht festgestellt werden, ob dieser Server die Umschreibung von URLs unterstützt. Diese Funktion kann aktiviert werden, aber wenn die Umschreibung von URLs nicht unterstützt wird, können vom Board erstellte Pfadangaben (z. B. bei Links) ungültig sein. Kontaktiere deinen Webhosting-Provider, wenn du dir nicht sicher bist, ob du diese Funktion problemlos aktivieren kannst.
Dementsprechend werden die Links von Extensions, die über app.php laufen, nicht umgeschrieben. Bei der Aboutus-Extension steht z.B. dann in der URL http://example.com/app.php/aboutus, was einfach nicht gut aussieht (zumal ich die Pages-Extension installieren möchte, für die das Problem dann auch gelten würde).

Meine .htaccess:

Code: Alles auswählen

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule ^(.*) http://example.com/$1 [L,R=301]

<IfModule mod_rewrite.c>
RewriteEngine on

#
# Uncomment the statement below if you want to make use of
# HTTP authentication and it does not already work.
# This could be required if you are for example using PHP via Apache CGI.
#
#RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

#
# The following 3 lines will rewrite URLs passed through the front controller
# to not require app.php in the actual URL. In other words, a controller is
# by default accessed at /app.php/my/controller, but can also be accessed at
# /my/controller
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ app.php [QSA,L]

#
# If symbolic links are not already being followed,
# uncomment the line below.
# http://anothersysadmin.wordpress.com/2008/06/10/mod_rewrite-forbidden-403-with-apache-228/
#
#Options +FollowSymLinks
</IfModule>

Die Umschreibung von http://www.example.com auf example.com funktioniert.
Wenn ich im ACP "Umschreiben von URLs aktivieren" auf "Ja" setze, erhalte ich beim Aufrufen entsprechender Links einen 500er Error.

Hat jemand eine Idee und/oder das schon in den Griff bekommen?

Danke!

Sepp

Edit 13:44 h:
Habe es nun doch noch allein hinbekommen.
:grin: Weil es vielleicht auch für andere interessant ist:
Beim Webspace von 1&1 scheint zwingend ein "RewriteBase /"erforderlich zu sein. Der Code der .htaccess muss dazu nur um eine Zeile ergänzt werden:

Code: Alles auswählen

[code]RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule ^(.*) http://example.com/$1 [L,R=301]
RewriteBase /

<IfModule mod_rewrite.c>
RewriteEngine on
(...)
Gruß
Sepp