在 hhvm 中重写规则,以仅在特定项目应用程序上使用漂亮的 URL


Rewrite rules in hhvm to use pretty urls on specific project applications only

Enviroment

在 Ubuntu Saucy 13.10 中使用 HHVM 3.0,使用 Apache2 并使用 Fastcgi

概述

我已经安装了上述应用程序,并按照本要点所示进行了配置

默认情况下,apache 使用 /var/www 作为我所有项目的根目录,并访问:

0.0.0.0/project1

会像我预期的那样给我(即将index.php作为默认文档阅读)。

问题所在

当我想为应用程序使用漂亮的 url 时,就会出现问题,因为我不能再使用 .htaccess 进行 url 重写并将所有请求提供给index.php

我做了什么

好的,我所做的是通过互联网寻找解决方案,并为VirtualHost指令找到了几种配置,如下所示:

VirtualHost {
  * {
    Pattern = .*
    RewriteRules {
      * {
        pattern = (.*)$
        to = index.php/$1
        qsa = true
      }
    }
  }
}

我认为它所做的是让漂亮的网址在服务器指令中定义的SourceRoot上工作,或者我错了?

问题

如何在我需要它工作的项目上制作漂亮的 url?

看看 apache 中的RewriteRule。你希望 apache 进行重写。HHVM所做的只是提供Apache告诉它的任何文件。