Я пытаюсь внедрить систему Kohana в HHVM. Проблема, с которой я столкнулся, заключается в том, что я получаю исключение «Отказано в доступе» из представленной ниже функции в классе Kohana View. (SYSPATH / классы / view.php). Выдает исключения при попытке включить файлы шаблона. (включите $ kohana_view_filename;). В моем случае файл /application/views/templates/default_page.php имеет разрешение 777. Мы запускаем apache2 в Ubuntu 14.04.1 LTS. Я не уверен, что проблема с Ubuntu или HHVM. Есть идеи как с этим разобраться?
protected static function capture($kohana_view_filename, array $kohana_view_data)
{
// Import the view variables to local namespace
extract($kohana_view_data, EXTR_SKIP);
if (View::$_global_data)
{
// Import the global view variables to local namespace
extract(View::$_global_data, EXTR_SKIP);
}
// Capture the view output
ob_start();
try
{
// Load the view within the current scope
include $kohana_view_filename;
}
catch (Exception $e)
{
echo $kohana_view_filename.':'.$e->getMessage().'<br/>';
// Delete the output buffer
ob_end_clean();
// Re-throw the exception
throw $e;
}
// Get the captured output and close the buffer
return ob_get_clean();
}
Такое сообщение говорит о том, что PHP не может получить доступ к файлу в дереве файловой системы.
Скорее всего, вы не предоставили необходимые разрешения для родительских папок.
Например:
/var/www/file.php
и его разрешения 777
Это полный доступ./var/www/
сама папка имеет владельца root
а также 500
разрешения: только root
может только читать содержимое папки и выполнять (изменить путь к ней).Так Apache, пока доступ /var/www/file.php
файл под apache
должен идти в /
затем /var/
затем /var/www/
затем откройте /var/www/file.php
,
Из-за недостаточных разрешений на /var/www/
вы получаете Permissions denied
ошибка.
Поэтому убедитесь, что у вас есть достаточные разрешения в каждой родительской папке. Удачи!
Других решений пока нет …