【发布时间】:2012-01-17 14:22:23
【问题描述】:
我正在尝试将来自/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,URL中没有额外的“web”。
【问题讨论】:
-
是的,哦yes框架确实很重要,因为它可以进行重定向(Wordpress 在某些配置上会这样做,Drupal 也是如此,Joomla 也是如此)。所以你必须明确哪个框架、用户应该输入什么 URL 以及应该如何在服务器端进行内部修改。
-
很抱歉我那么直截了当,但是在没有提供足够信息的情况下寻求帮助有时......令人沮丧。
-
@OlivierPons 我不确定我还能说什么?这完全是关于
.htaccess和 URL 重写。将/web/bar重写为/bar,使请求URL 不包含web部分。现在它会这样做,但 REQUEST_URI 仍然包含“网络”。
标签: apache .htaccess url-rewriting