.htaccess Rewrite
Jeg har forsøgt over nogle dage nu at få min htaccess til at rewrite som jeg vil have den til og er nået noget af vejen, håber i kan hjælpe med det sidste.Her er en beskrivelse:
? Mit ønske
! Aktuel status
? Nogle få specifikke urls skal ikke rewrites; sitemap, favicon, robots og alt under mappen mysite.dk/pages/
! Det virker vist som det skal
? Dynamiske subdomæner; *.mysite.dk rewrites til mysite.dk/pages/vis.php?id=*
! Det virker, men jeg mangler en undtagelse så www.mysite.dk ikke rewrites
? www.mysite.dk og mysite.dk skal rewrites til www.mysite.dk/pages/index.php
! Bliver ikke rewritet nu
? www.mysite.dk/* og mysite.dk/* skal rewrites til www.mysite.dk/pages/index.php?q=*
! bliver ikke rewritet nu, og viser i øvrigt en anden '404 page not found' side end den jeg har specificeret i htaccess. (ved ikke og det er hjælp til debug?)
Min kode lige nu:
Options +FollowSymLinks
ErrorDocument 400 /pages/errors/badrequest.php
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteCond %{REQUEST_URI} !=/sitemap.xml
RewriteCond %{REQUEST_URI} !=/sitemap.xsl
RewriteCond %{REQUEST_URI} !=/robots.txt
RewriteCond %{REQUEST_URI} !=/pages/(.*)
RewriteCond %{HTTP_HOST} ([^.]+)\.mysite.dk
RewriteCond %{HTTP_HOST} !=www/.mysite/.dk
RewriteRule ^(.+)$ /var/www/www.mysite.dk/www/pages/vis.php?id=%1
RewriteRule ^(www/.)?mysite/.dk$ /pages/index.php
RewriteRule ^(www/.)?mysite/.dk/(.*)$ /pages/index.php?q=%2