繁体   English   中英

apache + hhvm fastcgi

[英]apache + hhvm fastcgi

我正在尝试将我的项目从apache2.2迁移到以apache作为反向代理的apache2 + hhvm。

在迁移之前,我有此apache配置(以生成漂亮的url):

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/(server-status)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)$ index.php/$1 [L]

所以门户网站的网址就像:examples.com/post/post-title-as-slug

现在我有这个配置的Apache:

<IfModule mod_fastcgi.c>
<FilesMatch \.php$>
    SetHandler hhvm-php-extension
</FilesMatch>

<FilesMatch \.hh$>
    SetHandler hhvm-hack-extension
</FilesMatch>

Alias /ec /ec
Action hhvm-php-extension /ec virtual
Action hhvm-hack-extension /ec virtual

FastCgiExternalServer /ec -host 127.0.0.1:9000 -pass-header Authorization -idle-timeout 300

</IfModule>

而这个hhvm配置(server.ini):

hhvm.server.port = 9000
hhvm.server.type = fastcgi
hhvm.server.default_document = index.php
hhvm.log.use_log_file = true
hhvm.log.file = /var/log/hhvm/error.log
hhvm.repo.central.path = /var/run/hhvm/hhvm.hhbc
hhvm.server.source_root = /w3/dr/

仅当我将URL设置为例如examples.com/index.php/post/post-title-as-slug时,此配置才有效,但是如果url类似:examples.com/post/post-title-as-slug则我收到404 http错误。

我想从网址中删除index.php。

有人知道解决方案吗?

谢谢。

根据Facebook HHVM问题#3472 ,如果使用任何mod_rewrite规则,则必须在hhvm配置中设置hhvm.server.fix_path_info = true

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM