我一直在努力让 Apache/HHVM/Symfony 相互配合。大多数事情似乎都可以正常工作,但是在上传文件时我遇到了问题。结果 _POST 是单个条目,而不是预期的数组。
代理设置是:
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/path/to/root/directory/$1
使用 PHP5-FPM(不破坏_POST
参数)时,代理设置为:
SetEnvIf Request_URI . proxy-fcgi-pathinfo=1
<Directory "/path/to/root/directory">
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_URI} frontend_dev\.php [OR]
RewriteCond %{REQUEST_URI} backend_dev\.php
RewriteCond %{REQUEST_URI} !\/plugins\/servlet\/streams
RewriteCond %{REQUEST_URI} !\/rest\/activity-stream\/
RewriteRule ^(.*)$ fcgi://127.0.0.1:9000/mnt/html/dev/prodpad/web/$1 [P]
</Directory>
设置因多次尝试错误而有所不同。如果代理设置与 PHP5-FPM 类似,HHVM 会一直提示找不到 404 文件。如果没有文件,表单可以正常工作,所以我怀疑它与 HHVM 处理表单中的文件有关,但我找不到任何相关信息。
代理设置是否需要更改?或者使用 HHVM 上传文件有什么特别需要的吗?
堆栈是 Symfony 1.4、HHVM 2.4 和 Ubuntu 12.04 上的 Apache 2.4。