我正在寻找一种方法来强制 .htaccess 文件中的 RewriteRule 使用以前的 RewriteRule 的结果。
我有以下规则:
RewriteRule ^this-controller/this-action.*$ /that-controller/that-action
这可以正常工作,但是我使用的是 Zend 框架,它需要额外的规则来将所有请求路由到 index.php 进行处理。
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_URI} !server-status
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
结果是以下错误:
'Invalid controller specified (this-controller)'
它似乎正在使用原始 url ( this-controller/this-action
) 将请求重定向到 index.php。我怎样才能让它将重写 url ( /that-controller/that-action
) 传递给 index.php 呢?