我曾经有过这样的结构:
mysite (root)
L private
L login.php
L logout.php
L db
L manage_db.php
L one-client.com
L other-client.com
L uploads
L public
L assets, etc.
但现在已经改变了:
mysite (root)
L private
L app-core (new folder)
L login.php
L logout.php
L db
L manage_db.php
L one-client.com
L other-client.com
L uploads
L public
L assets, etc.
我需要的是重写网址,以便能够从mysite.com/private/login
而不是mysite.com/private/app-core/login
访问登录文件。我试过这个但是没有用:
RewriteRule ^private/app-core/(.*)$ /private/$1 [L,NC,R=302]
答案 0 :(得分:1)
这是你的规则:
RewriteRule ^private/app-core/(.*)$ /private/$1 [L,NC,R=302]
这条规则实际上是反过来的。您可以使用此规则将旧的/private/login
网址更改为其中包含/app-core
的新网址一组指定的网址:
RewriteRule ^private/(?!app-core|one-client\.com|uploads)(.*)$ /private/app-core/$1 [NC,L]
这将执行正确的重定向。
(?!app-core)
为负面预测,这意味着我们在app-core
/private/
确保在测试前清除浏览器缓存。