I've tried everything I can think of to debug the mod_rewrite rules. It is enable according to phpinfo(), but no matter what I put the structure as, permalinks don't work (for pages or posts).
My .htaccess is created correctly and reads (my site is running from a folder which I have changed to /foo here)
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /foo/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /foo/index.php [L]
</IfModule>
# END WordPress
If I change the permalink structure in the WP admin menu to /index.php/whatever , it works correctly.
My site config from sites-available:
<VirtualHost XXXXX:80>
<IfModule mod_rewrite.c>
RewriteLog /var/log/apache2/rewrite.log
RewriteLogLevel 3
</IfModule>
DocumentRoot /var/www/foo
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/foo>
Options FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
The logging doesn't work either FWIW. Server is ubuntu 10.04