我正在尝试将请求从/bar/baz
转发到/web/index.php/bar/baz
,这样您就不必在URL中使用该“web”文件夹了。到目前为止,我有/.htaccess
:
RewriteEngine On
RewriteRule ^(.*)$ web/index.php [QSA,L]
问题在于现在对/controller/action/
的请求导致错误:
找不到“GET / web / controller / action”的路由
这背后的框架无关紧要,重点是它应该是controller/action
,而不会在网址中添加额外的“网页”。
答案 0 :(得分:1)
使用以下代码更改.htaccess代码:
Options +FollowSymLinks -MultiViews
RewriteEngine on
RewriteRule ^(?!web/index\.php|controller/)(.*)$ web/index.php/$1 [QSA,L,NC]
除了从/controller
或/web/index.php
开始到/web/index.php
之外,此规则将内部重定向所有请求。