Warum sollte man sich auch an den Support seines Hosters (der den Server, auf dem der ganze Rotz liegt, kennt und Zugriff auf diesen Server hat) wenden und dort fragen, wenn einem die Leute im s9y-Forum (die das nicht wissen) doch auch alles vorkauen können?
All dieses Zeug kann – normalerweise, lies: wenn der Server/Webspace es unterstützt – in der .htaccess eingestellt werden. Heißt: Die Konfigurationsoption dazu schreibt Entsprechendes in die .htaccess. (Wenn Du keine .htaccess in Deinem Webspace findest, wäre das ein erstes Zeichen, dass der Webspace vielleicht doch kein mod_rewrite unterstützt. Gleichzeitig wäre es einfach möglich, dass Dein FTP-Client Dateien mit einem Punkt am Anfang des Dateinamens versteckt.)
In einem frisch installierten 2.0-Blog, in dem die betreffende Option auf „Disable URL rewriting” steht, sieht die .htaccess so aus:
Code: Select all
# BEGIN s9y
DirectoryIndex /index.php
<Files *.tpl.php>
deny from all
</Files>
<Files *.tpl>
deny from all
</Files>
<Files *.sql>
deny from all
</Files>
<Files *.inc.php>
deny from all
</Files>
<Files *.db>
deny from all
</Files>
# END s9y
Schalte ich in diesem Blog nun das URL-Rewriting im Backend an (“Use Apache mod_rewrite”) ändert sich der Inhalt dieser Datei wie folgt:
Code: Select all
# BEGIN s9y
ErrorDocument 404 /index.php
DirectoryIndex /index.php
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^serendipity_admin.php serendipity_admin.php [NC,L,QSA]
RewriteRule ^((archives/([0-9]+)\-[0-9a-z\.\_!;,\+\-\%]+\.html)/?) index.php?/$1 [NC,L,QSA]
RewriteRule ^(authors/([0-9]+)\-[0-9a-z\.\_!;,\+\-\%]+) index.php?/$1 [NC,L,QSA]
RewriteRule ^(feeds/categories/([0-9;]+)\-[0-9a-z\.\_!;,\+\-\%]+\.rss) index.php?/$1 [NC,L,QSA]
RewriteRule ^(feeds/authors/([0-9]+)\-[0-9a-z\.\_!;,\+\-\%]+\.rss) index.php?/$1 [NC,L,QSA]
RewriteRule ^(categories/([0-9;]+)\-[0-9a-z\.\_!;,\+\-\%]+) index.php?/$1 [NC,L,QSA]
RewriteRule ^archives([/A-Za-z0-9]+)\.html index.php?url=/archives/$1.html [NC,L,QSA]
RewriteRule ^([0-9]+)[_\-][0-9a-z_\-]*\.html index.php?url=$1-article.html [L,NC,QSA]
RewriteRule ^feeds/(.*) index.php?url=/feeds/$1 [L,QSA]
RewriteRule ^unsubscribe/(.*)/([0-9]+) index.php?url=/unsubscribe/$1/$2 [L,QSA]
RewriteRule ^approve/(.*)/(.*)/([0-9]+) index.php?url=approve/$1/$2/$3 [L,QSA]
RewriteRule ^delete/(.*)/(.*)/([0-9]+) index.php?url=delete/$1/$2/$3 [L,QSA]
RewriteRule ^(admin|entries)(/.+)?$ index.php?url=admin/ [L,QSA]
RewriteRule ^archive/? index.php?url=/archive [L,QSA]
RewriteRule ^(index|atom[0-9]*|rss|b2rss|b2rdf).(rss|rdf|rss2|xml) rss.php?file=$1&ext=$2
RewriteRule ^(plugin|plugin)/(.*) index.php?url=$1/$2 [L,QSA]
RewriteRule ^search/(.*) index.php?url=/search/$1 [L,QSA]
RewriteRule ^comments/(.*) index.php?url=/comments/$1 [L,QSA]
RewriteRule ^(serendipity\.css|serendipity_admin\.css)$ index.php?url=/$1 [L,QSA]
RewriteRule ^(serendipity\.js|serendipity_admin\.js)$ index.php?url=/$1 [L,QSA]
RewriteRule ^index\.(html?|php.+) index.php?url=index.html [L,QSA]
RewriteRule ^htmlarea/(.*) htmlarea/$1 [L,QSA]
#RewriteCond %{REQUEST_URI} !-U
RewriteRule (.*\.html?) index.php?url=/$1 [L,QSA]
<Files *.tpl.php>
deny from all
</Files>
<Files *.tpl>
deny from all
</Files>
<Files *.sql>
deny from all
</Files>
<Files *.inc.php>
deny from all
</Files>
<Files *.db>
deny from all
</Files>
# END s9y
Wenn man die Zeilen, die hier unterschiedlich sind, von Hand löscht, sollte man auch wieder ins Backend kommen.
Allerdings nützt Dir all das genau gar nichts, denn offensichtlich geht es ja in Deinem Webspace eben
nicht einfach so – sonst würdest Du keine Fehlermeldung, weiße Seite oder was auch immer bekommen, sobald Du diese Option anschaltest.
Und um
das zu klären, wendest Du Dich jetzt
bitte endlich mal an den Support Deines Hosters und fragst nach, ob Du keine .htaccess und/oder kein mod_rewrite zur Verfügung hast oder ob das in Deinem Webspace irgendwie anders eingerichtet werden muss als sonst üblich. Womöglich ist das z.B. gar kein Apache, auf dem dieser Webspace läuft. Würde mich nicht mal wundern.
YL