Articles of hhvm

使用HHVM的站点使用Sperate池

我正在使用nginx HHVM 3.0.1(rel)通过unix套接字。 我想在php-fpm中设置池,并为不同的站点使用不同的池并非常准确地分配资源。 可能吗?

hhvm不会在运行时更改error_log ini设置

所以我对hhvm是全新的。 我试图设置一个基本的nginx和hhvm环境。 它工作正常,同时运行php和hack,并输出错误到/var/log/hhvm/error.log 。 问题是我需要在运行时更改日志文件,但是错误总是只发送到/var/log/hhvm/error.log (或者任何/etc/hhvm/server.ini -> hhvm.log.file设置为)。 我testing的PHP文件是: <?php var_dump(ini_set('error_log', '/var/log/chs.log')); var_dump(ini_get('error_log')); error_log('foobar'); 在浏览器中,如预期的那样输出string(0) "" string(16) "/var/log/chs.log" 。 使用hack时,我会得到相同的结果。 我的设置是完全标准的。 使用apt-get install hhvm nginx清理Debian,然后运行/usr/share/hhvm/install_fastcgi.sh 。 有什么build议么? 有没有其他人试过这个,并使其工作?

在共享托pipe服务器上使用HHVM和FastCGI

我希望有人在这里可以看到以下几点: 我忙于使用NGINX和HHVM与PHP-FPM故障转移设置共享托pipe服务器。 我正计划在服务器上托pipe100到200个Wordpress站点。 HHVM被configuration为使用FastCGI。 是否有可能有一个单一的HHVM实例运行多个网站,每个作为各自的Linux用户? 或者我唯一的select是让所有的东西都作为默认的www-data用户运行? 由于安全性和交叉污染风险的存在,我希望能够避免后一种厨房式的环境。 我已经看到提到运行单独的HHVM实例,每个网站一个,但这听起来像一个相当资源密集型的select。 如果不能使用FastCGI创build一个HHVM实例,并且每个网站的PHP进程都以各自的Linux用户身份运行,那么我可能会select放弃HHVM而使用PHP-FPM,这将使我能够实现后者。 任何提示或build议将不胜感激! 谢谢

如何获取错误date/时间到HHVM错误日志中

我正在运行HHVM 3.1.0和nginx。 我将HHVM中的错误设置为自己的日志文件,而不是通过nginx返回。 我注意到的一件事是错误没有列出任何types的时间戳或date/时间,只是错误的string,这里是一些例子: \nWarning: Invalid argument: function: not a valid callback array in /srv/http/nx/app/model/Session.php on line 57 \nFatal error: Failed to initialize storage module: user (path: ) in /srv/http/nx/app/model/Session.php on line 57 \nWarning: Invalid argument: function: not a valid callback array 有没有一种方法可以更好地格式化这些错误日志条目,使其更加可用? 至less要有date和时间显示? 有没有办法通过nginx将错误传递回来,以便以php-fpm的方式logging它们? 下面是使用php-fpm并在我的/var/log/nginx/error.log获取错误的例子(注意漂亮的格式): [04-Aug-2014 13:53:55 UTC] PHP Warning: Invalid argument supplied for […]

使用无效的操作数types:array_uintersect期望数组(s)

我有下面的代码,获取可变数量的数组的交集。 $intersection = call_user_func_array('array_uintersect', $params); 使用testing数据,这工作得很好。 但是,使用真实数据(这是一个更大的数据集,使用相同的代码,但在hhvm和nginx上运行时, 比较三个或更多数组时,会出现以下错误: Invalid operand type was used: array_uintersect expects array(s) 比较两个arrays工作正常。 我已经检查了$params在服务器上的输出,它肯定有正确的值。 $params所有元素都是数组,最后一个元素是一个数组,其值是: array_compare ,这是我的自定义数组比较函数的名称。 什么可能导致这个错误? 更新: 我更新HHVM到最新的夜间版本,并升级我的服务器的内存,只是为了看看是否会有所帮助。 但是,它没有。 更新: 我现在意识到,Laravel Homestead默认情况下不使用hhvm ,打开后: sites: – map: homestead.app to: /home/vagrant/Code/project hhvm: true 错误也使用我的testing数据进行复制。 当closureshhvm时,十字路口完美地工作。

WordPress忽略HHVM上传最大文件大小

我有以下问题,我正在运行NGINX和HHVM(VM 3.9.1 rel): WordPress忽略我的/etc/hhvm/php.iniconfiguration文件,它有以下指令: ;php options session.save_handler = files session.save_path = /var/lib/hhvm/sessions session.gc_maxlifetime = 1440 memory_limit = 600M upload_max_filesize = 128M post_max_size = 128M max_input_time = 60 max_execution_time = 300 当我运行phpinfo()我可以看到我的上传文件大小反映在那里..但是,当我尝试通过Wordpress上传任何文件,我收到一个错误,最大上传大小为0kb。 任何帮助将不胜感激。

尝试使用在NGINX / HHVM上运行的Symfony来设置Memcached

我有memcached安装和工作经testing: nc -U /var/run/memcached/memcached.sock stats STAT pid 16360 STAT uptime 2246 STAT time 1412217254 STAT version 1.4.14 (Ubuntu) STAT libevent 2.0.21-stable STAT pointer_size 64 STAT rusage_user 0.032563 //and so on… 我遇到的问题是,当symfony加载并调用session_start()时,会引发一个错误: 致命错误:初始化存储模块失败:/ var / www / project / vendor / symfony / symfony / src / Symfony / Component / HttpFoundation / Session / Storage中的用户(path:/var/run/memcached/memcached.sock)第147行的NativeSessionStorage.php […]

HHVM在致命错误上输出状态码200,因此我不能使用fastcgi_next_upstream

当HHVM失败时,我想在nginx上回退到下一个上游(php5-fpm)。 这是目前不可能的,因为HHVM在致命错误后输出200 OK响应代码。 至less我想给更多的信息状态代码。 PHP错误日志: \nFatal error: $this is null in /data/wordpress/htdocs/wp-content/plugins/woocommerce-gateway-klarna/classes/class-klarna-account.php on line 1231 我知道它确实在php5-fpm中有效。 HHVM版本: hhvm –version HipHop VM 3.4.0 (rel) Compiler: tags/HHVM-3.4.0-0-g817b3a07fc4e509ce15635dbc87778e5b3496663 Repo schema: 0e12aaa31fae66b5591f65603de50c9d62caafac Extension API: 20140829

phpinfo()在HHVM中无法正常工作

我正在运行HHVM,并试图输出phpinfo() 。 它输出到页面如下: 嘻哈 哪个是不正确的,即使是hhvm文档。 这里发生了什么? http://docs.hhvm.com/manual/en/function.phpinfo.php

nginx为dynamic生成的文件设置错误的Content-Type头

我有一个使用mPDF(v6.0.0, http ://mpdf1.com)dynamic生成PDF的Web应用程序。 虽然一切工作正常与Apache和PHP我有一些nginx + HHVM麻烦。 问题是nginx拒绝设置正确的Content-Type头,这将是应用程序/ pdf。 相反,无论我在代码或环境configuration中做了什么/更改,都保留设置text / html,结果是文档的二进制数据显示在浏览器窗口中。 我正在使用没有任何参数的mPDF的Output()方法,所以PDF是为了内联呈现: http ://mpdf1.com/manual/index.php?tid=125 查看源代码(mpdf.php的8295行),一切都应该很好: https ://raw.githubusercontent.com/mpdf/mpdf/v6.0.0/mpdf.php 我已经确保“application / pdf”在mime.types文件中。 以.pdf结尾的所有URI设置位置指令“add_header Content-Type application / pdf”也不起作用。 这里是cURL输出,这导致我正确的方向: HTTP/1.1 200 OK Server: nginx/1.4.6 (Ubuntu) Date: Thu, 10 Dec 2015 08:13:29 GMT Content-Type: text/html; charset=utf-8 Content-Length: 1571243 Connection: keep-alive X-Powered-By: HHVM/3.10.1 Vary: Accept-Encoding Content-disposition: inline; filename="mpdf.pdf" Pragma: public […]