Bin gerade zum Shared Hosting bei GoDaddy gewechselt und versuche, meine .htaccess-Regeln zum Laufen zu bringen.
Hier ist, was ich habe:
ErrorDocument 404 /error.php
Options FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.mydomain\.org$
RewriteRule ^(.*)$ http://mydomain.org/$1 [R=301,L]
RewriteRule ^view/(\w+)$ viewitem.php?itemid=$1 [R=301,L]
RewriteRule ^category/(\w+)$ viewcategory.php?tag=$1 [R=301,L]
RewriteRule ^faq$ faq.php
RewriteRule ^about$ about.php
RewriteRule ^contact$ contact.php
RewriteRule ^submit$ submit.php
RewriteRule ^contactmsg$ handler-contact.php
Alle Seiten im Stammverzeichnis der Domäne scheinen zu funktionieren, d. h. mydomain.org/faq und mydomain.org/about funktionieren.
Aber immer wenn ich mydomain.org/category/somecategory versuche, erhalte ich eine 404. Wie kann ich meine .htaccess reparieren, damit sie diese Regeln befolgt, die mehr als eine Ebene tief sind?
Danke,
BEARBEITEN: Ich habe die Regeln wie folgt geändert:
RewriteRule ^view/(.*)$ viewitem.php?itemid=$1
RewriteRule ^category/(.*)$ viewcategory.php?tag=$1
Kann jemand bestätigen/ablehnen, dass dies derrichtigWie kann ich das beheben?
Antwort1
Die neue Vorgehensweise (mit (.*)
) ist richtig.