У меня есть в моем .htaccess
RewriteEngine On
RewriteRule ^([a-z0-9\-\_]+)$ ?page=$1 [L]
Который переписывает mysite.com/page к mysite.com/?page=page, который работает отлично.
Когда я перехожу на mysite.com/css, он игнорирует перезапись и переходит в каталог css (который существует). Есть ли в любом случае, чтобы он игнорировал существование каталога и продолжал переходить на mysite.com/?page=css?
Изменить: я должен добавить более конкретно, что при переходе на mysite.com/css на самом деле идет на mysite.com/css/?page=css
Это связано с тем, что ваше правило работает дважды. Измените ваше правило на это, чтобы предотвратить это поведение:
RewriteEngine On
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^([\w-]+)/?$ ?page=$1 [L,QSA]
Других решений пока нет …