saubere URLs mit htaccess und 1&1 Homepage Perfect
am 14.12.2007 - 12:55 Uhr in
Hallo alle zusammen,
Nach vergebener Suche, eine Lösung für meine Frage zu finden, wende ich mich nun an euch. Wahrscheinlich ist es alles viel leichter, als ich mir das vorstelle und ich sehe den Wald vor lauter Bäumen nicht.
Ich bin dabei, eine kleinere site, mit Hilfe von Drupal auf einem 1&1 Webhost einzurichten.
Das 1&1 Paket heißt "1&1 Homepage Perfect" und beinhaltet mySQL und PHP.
Die Installation hat prima geklappt und ich bin nun an der Konfiguration.
Mein Problem ist, dass ich keine sauberen URLs hin bekomme.
1&1 hat mir geschrieben:
"mod_rewrite kann bei uns genutzt werden. Ein Beispiel hierzu finden Sie z.B. unter:
http://hilfe-center.1und1.de/hosting/technik/htaccess/4.html"
Da ich kein Zugriff auf Apache Einstellungen habe, habe ich es so verstanden, dass ich in der Datei domain.de/files/.htaccess die Einstellungen treffen muss, dass er mir saubere URLs schreibt.
Meine Frage ist, was muss ich in die Datei schreiben?
Gruß, monchero
- Anmelden oder Registrieren um Kommentare zu schreiben
aktiviert?
am 14.12.2007 - 13:55 Uhr
Hast Du denn in der Drupal-Administration unter admin/settings/clean-urls auf den kleinen unscheinbaren Testlink geklickt? Nur wenn Du dann auf die Startseite "fliegst", funktioniert mod_rewrite bei Dir nicht. Andernfalls kannst Du nach dem Klick im Formular dann die Option Aktiviert auswählen und auf "Konfiguration speicern" klicken. Von Hand gibt's dann bzgl. clean URLs nichts in der .htaccess zu fummeln.
Jup, habe ich
am 14.12.2007 - 14:21 Uhr
Jup, habe ich probiert.
Von
http://domain.de/?q=admin/settings/clean-urls
auf
http://domain.de/admin/settings/clean-urls
bekomme ich einen "Error 500 - Internal server error"
Daher meine frage nach dem Inhalt der htaccess.
monchero
Kann dir gleich sagen,
am 14.12.2007 - 14:24 Uhr
Kann dir gleich sagen, zumind was ich so gelesen habe; du wirds dat nicht zum laufen bekommen! wechsle den webhoster!
------------------------------------------
http://kochazubi.net
mhmm...
am 14.12.2007 - 16:34 Uhr
Da die site mir nicht direkt gehört, liegt das nicht in meinen Möglichkeiten.
Weiß sonst jemand noch etwas?
monchero
lesbare URLs sind kein Problem
am 14.12.2007 - 16:51 Uhr
Hallo monchero,
lesbare URLs sind mit dem 1&1 Homepage Perfect-Paket kein Problem. Ich erstelle auch gerade mit Hilfe dieses Paketes eine Drupal-getriebene Internetseite.
Kommentiere in der .htaccess-Datei die Zeile 87 aus, wenn deine Domain direkt auf das Drupal-Verzeichnis zeigt:
85: # Modify the RewriteBase if you are using Drupal in a subdirectory and
86: # the rewrite rules are not working properly.
87: RewriteBase /
Falls deine Domain auf eine höhere Ebene zeigt und daher Drupal in einem Unterordner liegt (www.deine-domain.de/drupal), musst du weiterhin den Drupal-Ordner angeben:
85: # Modify the RewriteBase if you are using Drupal in a subdirectory and
86: # the rewrite rules are not working properly.
87: RewriteBase /drupal
Gruß
Christian
Vielen Dank, für dein
am 14.12.2007 - 17:11 Uhr
Vielen Dank, für dein Lichtblick, Christian.
Bei mir ist der Fall, dass die site direkt auf der Domain liegt.
Wäre es möglich, dass du mir die komplette .htaccess schickst.
Bei mir steht da im Moment gar nichts mehr drin.
monchero
RewriteBase bei 1&1
am 14.12.2007 - 22:34 Uhr
Hier einmal die komplett unveränderte und also originale .htaccess Datei der Drupal 5.5 Version.
Man sagt 1&1 nach, dass tatsächlich die Zeile " #RewriteBase /drupal" entkommentiert werden muss, in deinem Falle also "RewriteBase /" heissen muss, da, wie Du sagst, Drupal bei Dir nicht in einem Unterverz. residiert.
#
# Apache/PHP/Drupal settings:
#
# Protect files and directories from prying eyes.
<FilesMatch "\.(engine|inc|info|install|module|profile|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template)$">
Order allow,deny
</FilesMatch>
# Don't show directory listings for URLs which map to a directory.
Options -Indexes
# Follow symbolic links in this directory.
Options +FollowSymLinks
# Customized error messages.
ErrorDocument 404 /index.php
# Set the default handler.
DirectoryIndex index.php
# Override PHP settings. More in sites/default/settings.php
# but the following cannot be changed at runtime.
# PHP 4, Apache 1.
<IfModule mod_php4.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
</IfModule>
# PHP 4, Apache 2.
<IfModule sapi_apache2.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
</IfModule>
# PHP 5, Apache 1 and 2.
<IfModule mod_php5.c>
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
</IfModule>
# Requires mod_expires to be enabled.
<IfModule mod_expires.c>
# Enable expirations.
ExpiresActive On
# Cache all files for 2 weeks after access (A).
ExpiresDefault A1209600
# Do not cache dynamically generated pages.
ExpiresByType text/html A1
</IfModule>
# Various rewrite rules.
<IfModule mod_rewrite.c>
RewriteEngine on
# If your site can be accessed both with and without the 'www.' prefix, you
# can use one of the following settings to redirect users to your preferred
# URL, either WITH or WITHOUT the 'www.' prefix. Choose ONLY one option:
#
# To redirect all users to access the site WITH the 'www.' prefix,
# (http://example.com/... will be redirected to http://www.example.com/...)
# adapt and uncomment the following:
# RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
# RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
#
# To redirect all users to access the site WITHOUT the 'www.' prefix,
# (http://www.example.com/... will be redirected to http://example.com/...)
# adapt and uncomment the following:
# RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
# RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]
# Modify the RewriteBase if you are using Drupal in a subdirectory and
# the rewrite rules are not working properly.
#RewriteBase /drupal
# Rewrite old-style URLs of the form 'node.php?id=x'.
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{QUERY_STRING} ^id=([^&]+)$
#RewriteRule node.php index.php?q=node/view/%1 [L]
# Rewrite old-style URLs of the form 'module.php?mod=x'.
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{QUERY_STRING} ^mod=([^&]+)$
#RewriteRule module.php index.php?q=%1 [L]
# Rewrite current-style URLs of the form 'index.php?q=x'.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</IfModule>
# $Id: .htaccess,v 1.81.2.3 2007/09/21 12:24:22 drumm Exp $
RewriteBase
am 15.12.2007 - 12:12 Uhr
Bei mir ist der Fall, dass die site direkt auf der Domain liegt.
Trotzdem musst du das Kommentarzeichen vor
RewriteBase
entfernen. Bei einer Shared Hosting Domain wirdRewriteBase
oft in der zentralen Konfigurationsdatei verwendet, diese Einstellung musst du dann in der .htaccess überschreiben.Die Kommentare von Drupal in der .htaccess sind da etwas ungenau.
--
Auskommentieren?
am 15.12.2007 - 12:22 Uhr
Kommentiere in der .htaccess-Datei die Zeile 87 aus, [...]
Die meisten Leute verstehen unter dem Begriff "Auskommentieren" das "Auschalten von Quelltext durch ein Kommentarzeichen". Leider nicht alle. Ein wachsende Anzahl von Leuten versteht darunter das Entfernen eine Kommentarzeichens.
--
"Die subtilen Feinheiten der
am 15.12.2007 - 13:06 Uhr
"Die subtilen Feinheiten der deutschen Sprache. Thema der heutigen Sendung: Auskommentieren und entkommentieren"
--
"Look, Ma, I'm dead!"
Cell, Stephen King
Gelöst!
am 15.12.2007 - 14:46 Uhr
Vielen Dank an alle.
Nun klappt alles, so wie es sein soll.
Gruß und noch ein schönes Wochenende.
monchero
Was hast du gemacht?
am 15.12.2007 - 14:52 Uhr
Nun klappt alles, so wie es sein soll.
Es wäre nett wenn du deine Lösung beschreiben würdest. Dann haben auch andere Leute mit ähnlichen Problemen etwas davon.
--
Anmerkung
am 17.12.2007 - 00:35 Uhr
Es wäre nett wenn du deine Lösung beschreiben würdest. Dann haben auch andere Leute mit ähnlichen Problemen etwas davon.
Die Datei http://meinedomain.de/.htaccess wie folgend verändert:
Z. 85 # Modify the RewriteBase if you are using Drupal in a subdirectory and
Z. 86 # the rewrite rules are not working properly.
Z. 87 RewriteBase /
Oje
am 17.12.2007 - 22:29 Uhr
Kommentiere in der .htaccess-Datei die Zeile 87 aus, [...]
Die meisten Leute verstehen unter dem Begriff "Auskommentieren" das "Auschalten von Quelltext durch ein Kommentarzeichen". Leider nicht alle. Ein wachsende Anzahl von Leuten versteht darunter das Entfernen eine Kommentarzeichens.
Oje, da hast du natürlich Recht. Das wäre ein gefundenes Fressen für Herrn Sick! ;)
Morgöön auch n 1und1 prööbi hab.
am 23.01.2008 - 07:28 Uhr
Morgen,
ich habe ein Problem mit dem Mode Rewrite Funktionen.
Bin bei 1und1 habe Homepage Perfect.
Ich habe das Problem, dass der Server die Suchmaschinenfreundliche Url nicht wirklich umleitet / erkennt.
Normale Url die erreicht werden kann:
/articles.php/2/1/dsadasdasdasdasdasdas/Page1.html
Url die aber erreicht werden soll:
articles/2/1/dsadasdasdasdasdasdas/Page1.html
Auf das .php achten. :D
Hier meine Mode Rewrite .htaccess mit Anweisung. Ich weiß nicht mehr was ich machen soll. Hoffe jemand von euch findet den Fehler, oder hat ne andere Lösung.
Mein Server nutzt die php version 4.4.7
Options -MultiViews +FollowSymlinks
RewriteEngine On
# Turn off mod_security filtering.
SecFilterEngine Off
# The below probably isn't needed, but better safe than sorry.
SecFilterScanPOST Off
# PHP is in CGI Mode, so we need a different mod_rewrite
RewriteCond %{REQUEST_URI} !categories\.php
RewriteRule ^categories(.*) categories.php?$1 [L]
RewriteCond %{REQUEST_URI} !articles\.php
RewriteRule ^articles(.*)$ articles.php?$1 [L]
RewriteCond %{REQUEST_URI} !pages\.php
RewriteRule ^pages(.*)$ pages.php?$1 [L]
RewriteCond %{REQUEST_URI} !blogs\.php
RewriteRule ^blogs(.*)$ blogs.php?$1 [L]
RewriteCond %{REQUEST_URI} !search.php
RewriteRule ^search(.*)$ search\.php?$1 [L]
RewriteCond %{REQUEST_URI} !authors.php
RewriteRule ^authors(.*)$ authors\.php?$1 [L]
RewriteCond %{REQUEST_URI} !articlerss.php
RewriteRule ^articlerss(.*)$ articlerss\.php?$1 [L]
RewriteCond %{REQUEST_URI} !news.php
RewriteCond %{REQUEST_URI} !newsrss.php
RewriteRule ^news(.*)$ news.php?$1 [L]
RewriteCond %{REQUEST_URI} !contact.php
RewriteRule ^contact(.*)$ contact\.php?$1 [L]
# Using PHP 5 in module mode
RewriteCond %{REQUEST_URI} categories.*
RewriteRule ^categories(.*)$ categories.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} articles.*
RewriteRule ^articles(.*)$ articles.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} pages.*
RewriteRule ^pages(.*)$ pages.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} blogs.*
RewriteRule ^blogs(.*)$ blogs.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} search.*
RewriteRule ^search(.*)$ search.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} authors.*
RewriteRule ^authors(.*)$ authors.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} articlerss.*
RewriteRule ^articlerss(.*)$ articlerss.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} news.*
RewriteCond %{REQUEST_URI} !newsrss
RewriteRule ^news(.*)$ news.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} contact.*
RewriteRule ^contact(.*)$ contact.php?$1 [T=application/x-httpd-php,L]
# PHP 4 in module mode
RewriteCond %{REQUEST_URI} categories.*
RewriteRule ^categories(.*)$ categories.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} articles.*
RewriteRule ^articles(.*)$ articles.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} pages.*
RewriteRule ^pages(.*)$ pages.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} blogs.*
RewriteRule ^blogs(.*)$ blogs.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} search.*
RewriteRule ^search(.*)$ search.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} authors.*
RewriteRule ^authors(.*)$ authors.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} articlerss.*
RewriteRule ^articlerss(.*)$ articlerss.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} news.*
RewriteCond %{REQUEST_URI} !newsrss
RewriteRule ^news(.*)$ news.php?$1 [T=application/x-httpd-php,L]
RewriteCond %{REQUEST_URI} contact.*
RewriteRule ^contact(.*)$ contact.php?$1 [T=application/x-httpd-php,L]
clean-URL und 1&1 (1und1)
am 19.04.2008 - 16:32 Uhr
ich habe mit Erfolg folgende Zeilen in die htaccess eingefügt:
RewriteEngine on
RewriteBase /
Außerdem, unabhängig von clean-URL PHP5 zulassen, siehe .
Gruß
M.H.
Gegenstück auf localhost
am 05.04.2010 - 14:03 Uhr
Hallo,
danke für den Thread, habe das Problem bei meinem 1&1-Paket auch mit
RewriteBase /drupal
in der .htaccess lösen können. Ich bekomme es bei meiner lokalen Installation allerdings nicht hin. Der Apache2.2-Docroot ist:DocumentRoot "C:/Dokumente und Einstellungen/Heinz/Eigene Dateien/wamp/htdocs"
Drupal liegt in
C:/Dokumente und Einstellungen/Heinz/Eigene Dateien/wamp/htdocs/drupal
. Der EintragRewriteBase /drupal
bleibt ohne Wirkung. Genauso wieRewriteBase "C:/Dokumente und Einstellungen/Heinz/Eigene Dateien/wamp/htdocs/drupal"
und andere Varianten. Kann mir jemand einen Tip geben, wie der richtige Wert heißen müßte? DankeGruß
Heinz
Funktioniert der Drupal Test überhaupt richtig?
am 01.11.2011 - 15:35 Uhr
Hallo Jungs,
ich bin neu in Drupal. (Drupal 7 deutsche Sprachversion) Und habe wie von MichaelaH empfohlen das mal in meiner Dual Basic 1und1 Webhosting .htaccess eingetragen:
RewriteEngine on
RewriteBase /
(Erste Zeile war glaube ich gar nicht notwendig.) Seitdem kann ich auf Seiten auch mit dem lesbaren Alias zugreifen. Also etwa
www.example.de/Alias
das ging vorher nicht. Der Test auf 'Lesbare Urls' schlägt aber nach wie vor fehl. Kann es sein, dass dadurch einige Verwirrung entsteht?
Gruss, Marc
funktioniert auch noch mit Drupal 7
am 08.12.2011 - 15:33 Uhr
Hallo. Dieser Thread ist zwar schon was her, aber ich möchte mich trotzdem bei dico bedanken. Auch unter Drupal 7 bei 1und1 funktioniert der Tipp mit dem "RewriteBase /" auskommentieren. Ist zwar nicht mehr die gleiche Zeile, aber die Ursache ist das gleiche.
1un1 bleibt aber weiterhin mein "worst webhoster 2011", auch wenn's dort recht schnell läuft ;-)
wichtig bei 1&1 ist, dass man
am 26.07.2013 - 10:32 Uhr
wichtig bei 1&1 ist, dass man explizit in der .htaccess php5 erzwingt. das geht, wenn man die zeilen
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
ganz zu anfang in die .htaccess einfügt.