是的,Iam试图从网络本身中取出_PRIVATE文件夹
我无法弄清楚我是如何进行/../重定向的。因为这发生在Apache中,它应该以某种方式允许它。
我想要../因为有时_PUBLIC是www root,取决于那里的大量webhosts,我想让它在两个设置上工作= /
结构
/ (www root)
- .htaccess #1
- _PUBLIC/
- .htaccess #2
- images/
- javascripts/
- styles/
- _PRIVATE/
- pages/
- login.php
.htaccess #1
* -> /_PUBLIC/*
.htaccess #2
user/login -> /../_PRIVATE/pages/login.php
这就是我的.htaccess文件现在的样子
.htaccess #1
RewriteCond $1 !^_PUBLIC
RewriteRule ^(.*)$ /_PUBLIC/$1 [L]
.htaccess #2
RewriteRule ^user/login/? /../_PRIVATE/pages/login.php [L]
答案 0 :(得分:0)
我认为您应该在/
..
RewriteRule ^user/login/? ../_PRIVATE/pages/login.php [L]
这不起作用吗?
更新:
如果您可以{_ 3}}和http://yoursite/_PUBLIC访问_PUBLIC和_PRIVATE,那么您应该只重写
RewriteRule ^user/login/? /_PRIVATE/pages/login.php [L]
END UPATE
另外:您应该能够通过将前缀_PUBLIC添加到#2中的规则来合并两个.htaccess文件 - 这样您就不必使用..
答案 1 :(得分:0)
请尝试以下规则:
RewriteCond $1 !^_(PUBLIC|PRIVATE)($|/)
RewriteCond %{THE_REQUEST} !^[A-Z]+\ /_(PUBLIC|PRIVATE)[/?\ ]
RewriteRule ^(.*)$ /_PUBLIC/$1 [L]
RewriteRule ^user/login/? /_PRIVATE/pages/login.php [L]