欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

HHVM + mediawiki 怎么配置?

程序员文章站 2022-06-04 17:13:42
...
环境:Debian 8 64bit,openresty(nginx加强版)1.9.7.4,HHVM 3.13.1,mediawiki 1.26.2最新版
遇到的问题:HHVM 无法解析php5,浏览器会直接下载。(比如访问wiki首页时)
相关配置:

/etc/hhvm/php.ini

; php options
session.save_handler = redis
session.save_path = "tcp://localhost:6379"
session.gc_maxlifetime = 1440
memory_limit = 256M

; hhvm specific
hhvm.log.level = Warning
hhvm.log.always_log_unhandled_exceptions = true
hhvm.log.runtime_error_reporting_level = 8191
hhvm.mysql.typed_results = false

/etc/hhvm/server.ini

; php options

pid = /var/run/hhvm/pid

; hhvm specific

hhvm.server.port = 9000
hhvm.server.user = www
hhvm.server.group = www
hhvm.server.type = fastcgi
hhvm.server.default_document = index.php,index.php5
hhvm.log.use_log_file = true
hhvm.log.file = /var/log/hhvm/error.log
hhvm.repo.central.path = /var/run/hhvm/hhvm.hhbc

/etc/nginx/hhvm.conf

location ~ \.(hh|php5|php)$ {
    fastcgi_keep_conn on;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

/etc/nginx/nginx.conf

省略多余部分
include servers.conf

/etc/nginx/servers.conf

server
{
    listen   80;
    server_name   baike.mpcblab.com;
    root   /var/www/html/baike;
    index  index.php index.php5 index.html index.htm;
    set_real_ip_from  127.0.0.1;
    real_ip_header    X-Forwarded-For;
    #limit_conn perip 3;
    #limit_conn perserver 20;
    #limit_rate 1024k;

    location /
    {
    #   rewrite ^/([^?]*)(?:\?(.*))? /index.php5?title=$1&$2 last; //就是这行,注释了能访问,不注释就不会解析而是直接下载,但调用.php5文件的地方,比如“特殊页面:版本”还是会直接下载
    }
    
    include  hhvm.conf;
}

其他的Web服务都正常使用没有问题,只有mediawiki不行

回复内容:

环境:Debian 8 64bit,openresty(nginx加强版)1.9.7.4,HHVM 3.13.1,mediawiki 1.26.2最新版
遇到的问题:HHVM 无法解析php5,浏览器会直接下载。(比如访问wiki首页时)
相关配置:

/etc/hhvm/php.ini

; php options
session.save_handler = redis
session.save_path = "tcp://localhost:6379"
session.gc_maxlifetime = 1440
memory_limit = 256M

; hhvm specific
hhvm.log.level = Warning
hhvm.log.always_log_unhandled_exceptions = true
hhvm.log.runtime_error_reporting_level = 8191
hhvm.mysql.typed_results = false

/etc/hhvm/server.ini

; php options

pid = /var/run/hhvm/pid

; hhvm specific

hhvm.server.port = 9000
hhvm.server.user = www
hhvm.server.group = www
hhvm.server.type = fastcgi
hhvm.server.default_document = index.php,index.php5
hhvm.log.use_log_file = true
hhvm.log.file = /var/log/hhvm/error.log
hhvm.repo.central.path = /var/run/hhvm/hhvm.hhbc

/etc/nginx/hhvm.conf

location ~ \.(hh|php5|php)$ {
    fastcgi_keep_conn on;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

/etc/nginx/nginx.conf

省略多余部分
include servers.conf

/etc/nginx/servers.conf

server
{
    listen   80;
    server_name   baike.mpcblab.com;
    root   /var/www/html/baike;
    index  index.php index.php5 index.html index.htm;
    set_real_ip_from  127.0.0.1;
    real_ip_header    X-Forwarded-For;
    #limit_conn perip 3;
    #limit_conn perserver 20;
    #limit_rate 1024k;

    location /
    {
    #   rewrite ^/([^?]*)(?:\?(.*))? /index.php5?title=$1&$2 last; //就是这行,注释了能访问,不注释就不会解析而是直接下载,但调用.php5文件的地方,比如“特殊页面:版本”还是会直接下载
    }
    
    include  hhvm.conf;
}

其他的Web服务都正常使用没有问题,只有mediawiki不行

自己解决了,参考官方文档:HHVM Doc
在server.ini加上:hhvm.php_file.extensions["php5"] = ".php5"重启HHVM即可。

为什么不用php7呢赶紧抛弃hhvm吧。。。