#php #hhvm
#php #hhvm
Вопрос:
Только что установил HHVM и пытаюсь запустить простой index.php файл, но получаю сообщение об ошибке ниже:
«Неустранимая ошибка: неперехваченная ошибка: не файл взлома»
Команды, которые приводят к указанной выше ошибке:
hhvm index.php
hhvm —php index.php
содержимое индекса::
<?php
phpinfo();
версия hhvm:
HipHop VM 4.86.1
Примечание: я могу запустить файл взлома без каких-либо проблем через командную строку или через FastCGI.
hhvm fib.hack (run with no problem)
Я пропустил флаг или параметр конфигурации? Во всех руководствах, которые я смог найти в Интернете, указано, что hvvm должен иметь возможность запускать php без каких-либо проблем из коробки.
Любая помощь будет оценена.
Ответ №1:
Вы столкнетесь с другими проблемами, но в качестве первого шага попробуйте использовать <?hh
вместо <?php
, потому что это запрещено в последних версиях HHVM. .php
Расширение по-прежнему разрешено, но не заголовок файла:
<?hh
phpinfo();
После этого вы столкнетесь с такими проблемами, как «Неперехваченная ошибка: найден код верхнего уровня«, для чего вам нужно будет обернуть код внутри функции точки входа, добавив атрибут и функцию следующим образом:
<?hh
<<__EntryPoint>>
function main_entry_point(): void {
phpinfo();
}
После этого вы столкнетесь с другими проблемами из-за использования phpinfo()
и других функций PHP, потому что ребята из HHVM по какой-то причине пытаются ограничить использование PHP.
Комментарии:
1. Это хороший ответ, но в нем не учитывается важная деталь верхнего уровня: HHVM больше не поддерживает PHP и поддерживает только Hack. Эти два по-прежнему довольно тесно связаны, поэтому вам могут сойти с рук подобные преобразования, но вот почему. hhvm.com/blog/2018/09/12/end-of-php-support-future-of-hack.html поговорим об этом более подробно.