Why is home page content not displaying with this rewrite rule?

I suppose you’ve forgotten the QSA directive, to add properly the query string:

RewriteEngine On
RewriteBase /
RewriteRule ^(\w+)/$ /index.php?state=$1 [QSA,L]
RewriteRule ^index\.php$ - [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [QSA,L]

Tell me if it works, and if not, I’ll do my best to answer.

Two hints:


Please try to use the RewriteLog directive: it helps you to track down such problems:

# Trace:
# (!) file gets big quickly, remove in prod environments:
RewriteLog "/web/logs/mywebsite.rewrite.log"
RewriteLogLevel 9
RewriteEngine On

My favorite tool to check for regexp:

http://www.quanetic.com/Regex (don’t forget to choose ereg(POSIX) instead of preg(PCRE)!)