问题
I'm trying to use this .htaccess
to change the RewriteBase
if the location is local or live server.
Options +FollowSymlinks
RewriteEngine on
<LocationMatch "^/(bbtsrv02)/$">
#RewriteBase /beta/admin/
</LocationMatch>
RewriteCond %{REQUEST_URI} !index.php$
RewriteCond %{REQUEST_URI} !css/(.*)\.
RewriteCond %{REQUEST_URI} !img/(.*)\.
RewriteCond %{REQUEST_URI} !incs/(.*)\.
RewriteCond %{REQUEST_URI} !js/(.*)\.
RewriteCond %{REQUEST_URI} !upload/(.*)\.
RewriteCond %{REQUEST_URI} !widget/(.*)\.
RewriteRule ^(.*) index.php?_pd=$1 [NC,L]
As soon as I remove the LocationMatch
the whole thing starts working again. I only need to change the RewriteBase
for live testing.
回答1:
<LocationMatch>
directive CANNOT be used in .htaccess file -- only in server config or virtual host context.
http://httpd.apache.org/docs/current/mod/core.html#locationmatch
来源:https://stackoverflow.com/questions/6663611/htaccess-locationmatch-server-error