У меня так:
RewriteBase /
Залил в корень, без каких-либо подпапок.
.htaccess у меня имеет следующий вид:
php_flag magic_quotes_gpc Off
Options +FollowSymlinks
# Prevent Directoy listing
Options -Indexes
# Prevent Direct Access to files
<FilesMatch "\.(tpl|ini)">
Order deny,allow
Deny from all
</FilesMatch>
# SEO URL Settings
RewriteEngine On
RewriteBase /
# This will prevent redirect loop for the below three RewriteRule.
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule .* - [L]
# E.g external redirect /index.php?route=common/home to /common/home
# X-Requested-With (http header created by jQuery.load()) prevent this rule from AJAX request E.g Get product/product/review when open product details.
RewriteCond %{HTTP:X-Requested-With} !XMLHttpRequest [NC]
RewriteCond %{QUERY_STRING} ^route=([a-z-_/]+)$ [NC]
RewriteRule ^index\.php %1/? [R=301,L]
# E.g external redirect /index.php?route=product/product&product_id=8 to /product/product?product_id=8
RewriteCond %{HTTP:X-Requested-With} !XMLHttpRequest [NC]
RewriteCond %{QUERY_STRING} ^route=([a-z-_/]+)\&(.*)$ [NC]
RewriteRule ^index\.php %1/?%2 [R=301,L]
# E.g internal redirect /common/home to /index.php?route=common/home
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*)/$|^([^?]*)$ index.php?_route_=$1$2 [L,QSA]
### Additional Settings that may need to be enabled for some servers
### Uncomment the commands by removing the # sign in front of it.
### If you get an "Internal Server Error 500" after enabling, then restore the # as this means your host doesn't allow that.
# 1. If your cart only allows you to add one item at a time, it is possible register_globals is on. This may work to disable it:
# php_flag register_globals off
Файл лога ошибок показывает, что RewriteCond: cannot compile regular expression '^route=([a-z-_/]+)$'\n, хотя на денвере всё работает!
Помогите решить проблему.