我正试图解决.htaccess规则,我正在深入探索这个规则!
我在服务器上有以下布局的网站:
www.domain.com/mysite
现在,我需要允许访问以下内容:
www.domain.com/mysite/admin(以及“admin”文件夹中的所有内容)
但是,阻止访问:
www.domain.com/mysite(以及所有内容,除了匹配的内容 “admin”文件夹)
到目前为止,我有这个:
RedirectMatch ^ / admin /?(。*)http://www.domain.com/mysite/admin/ $ 1
RedirectMatch ^ /(?!admin)/?(。*)http://www.domain2.com/ $ 1
但它似乎不起作用?
答案 0 :(得分:1)
将此代码放入DOCUMENT_ROOT/mysite/.htaccess
文件中:
RewriteEngine On
RewriteBase /mysite/
RewriteRule ^((?!admin(?:/|$)).*)$ http://www.domain2.com/$1 [L,R]
(?!...) is the syntax for negative lookahead
(?:..) is the syntax for non-capturing group
(?!admin(?:/|$)) matches anything that is not starting from admin/ Or admin$