Se explican las modificaciones de apache con OpenSuse 12.3 aunque es muy similar para otras distribuciones:
Modificar /etc/apache2/default-server.conf
Dentro de<Directory "/srv/www/htdocs"> cambiar AllowOverride y ponerlo a All
en el fichero de virtual host que corresponda, dentro de Directory sustituir las opciones por:
Options +FollowSymLinks
AllowOverride All
Order deny,allow
Allow from all
Y en el fichero .htaccess hay que poner:
Options +FollowSymLinks # Sin esta línea da un forbidden
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]