重定向到Apache路由.htacess
问题描述:
我想从我的.htaccess重定向到一个特定的路线(我使用Zend框架,但它对每个框架,我猜)是相同的。重定向到Apache路由.htacess
这里是我的.htaccess:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{QUERY_STRING} ^_escaped_fragment_=/?(.*)$
RewriteRule ^(.*)$ /snapshot/%1? [NC,L]
这是行不通的。 注意:snapshot
文件夹不存在。
但如果我被替换的最后一行:
RewriteRule ^(.*)$ http://my-site.com/snapshot/%1? [NC,L]
它的工作原理... 第二个作品,但重定向URL是可见的,我不希望出现这种情况。
我能做些什么使第一个例子工作?
谢谢
答
我有一个解决方案,但它不需要mod_rewrite的。你必须编辑你的index.php一点点。在$application->bootstrap();
之后和$application->run();
之前添加此片段。
$application->bootstrap();
if (preg_match ('~_escaped_fragment_=(.*)~', $_SERVER ['QUERY_STRING'], $match))
{
$frontcontroller = $application->getBootstrap()->FrontController;
$request = new Zend_Controller_Request_Http('http://your.site.com/controller/'.$match[1]);
$frontcontroller->setRequest($request);
}
$application->run();