0

我浪费了很多时间来寻找如何将所有请求重定向到 index.php。

我的意思是:site.com/some-url?param&1

会变成

site.com/index.php 和 $_SERVER[REQUEST_URI] === some-url?param&1

我有一个嘻哈档案(基于 Nette 框架)和一个虚拟主机(一个从 Nginx 代理的 hiphop 实例)。

编辑:替代问题可以是:如何设置 nginx 来修改通过 FastCGI 发送到 PHP 的 REQUEST_URI 字段?

4

3 回答 3

1

如果您在 HHVM 之前使用 Nginx,那么您可能希望静态文件由 Nginx 提供(因为它更快),其他所有内容都传递给index.php. 在您的 Nginx 站点配置中,您可以执行以下操作:

location / {
    try_files $uri $uri/ index.php?$args;
}
于 2013-10-29T04:33:05.960 回答
1

您必须将重写规则添加到主 config.hdf 文件。hhvm 不支持读取 .htaccess 文件。

 # In my app I have a public side and and admin 
 # side. All requests to the public side should 
 # be rerouted through a script. All requests to
 # the backend .php and static asset files should
 # be allowed.

     * {

        # rewrite every request onto 
        # /myapp/page.php/<original request>

        pattern = ^(.*)$
        to = /myapp/page.php/$1

        # append any query strings.

        qsa = true
        }

我写了一篇关于配置 hhvm 的文章

于 2013-12-04T22:19:39.103 回答
-1

我对 HipHop 不熟悉,但是 Apache 上的 .htaccess 可以用RewriteRules来解决这个问题

于 2013-10-09T13:01:56.893 回答