Acabei de mudar para hospedagem compartilhada no GoDaddy e estou tentando fazer minhas regras .htaccess funcionarem.
Aqui está o que eu tenho:
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
Todas as páginas na raiz do domínio parecem estar funcionando, ou seja, mydomain.org/faq, mydomain.org/about estão funcionando.
Mas sempre que tento mydomain.org/category/somecategory, recebo um 404. Como posso corrigir meu .htaccess para obedecer a essas regras com mais de 1 nível de profundidade?
Obrigado,
EDIT: Corrigi as regras alterando-as para o seguinte:
RewriteRule ^view/(.*)$ viewitem.php?itemid=$1
RewriteRule ^category/(.*)$ viewcategory.php?tag=$1
Alguém pode confirmar/negar que este é oapropriadomaneira de consertar isso?
Responder1
A nova maneira como você está fazendo isso (com (.*)
) está correta.