ViktoriaSchool
@ViktoriaSchool
ITшник

Почему не срабатывает $application->run(); в YII2?

Перенсли проект с Debian8 на Centos7 и перестало работать Yii приложение.
На экран выводится run() и все.
Все конфиги скопировали со старого сервера, все зависимости установлены
В чем может быть проблема?

код index.php
<?php
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'prod');

require(__DIR__ . '/../../vendor/autoload.php');
require(__DIR__ . '/../../vendor/yiisoft/yii2/Yii.php');
require(__DIR__ . '/../../common/config/bootstrap.php');
require(__DIR__ . '/../config/bootstrap.php');

$config = yii\helpers\ArrayHelper::merge(
require(__DIR__ . '/../../common/config/main.php'),
require(__DIR__ . '/../../common/config/main-local.php'),
require(__DIR__ . '/../config/main.php'),
require(__DIR__ . '/../config/main-local.php')
);

(new yii\web\Application($config))->run();
  • Вопрос задан
  • 96 просмотров
Решения вопроса 1
ViktoriaSchool
@ViktoriaSchool Автор вопроса
ITшник
Добавил в конфиг апача
< FilesMatch "\.ph(p[3-5]?|tml)$" >
SetHandler application/ x-httpd-php5
< /FilesMatch >

и заработало
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
vitaly_74
@vitaly_74
Похоже, что с вашей конфигурацией что-то не так, вот несколько вещей, которые вы можете проверить:

Убедитесь, что PHP установлен и работает правильно. Это может показаться глупым, но никогда не знаешь наверняка. Простой способ проверить это-запустить php -v из командной строки и посмотреть, возвращает ли он информацию о версии или какие-либо ошибки.

Убедитесь, что модуль PHP указан и раскомментирован внутри вашего Apache httpd.conf, это должно быть что-то вроде LoadModule php5_module "c:/php/php5apache2_2.dll" в файле. Найдите LoadModule php и убедитесь, что перед ним нет комментария ( ;).

Убедитесь, что в файле Apache httpd.conf есть тип PHP MIME. Это должно быть что-то вроде AddType application/x-httpd-php .php . Это говорит Apache о запуске .php файлов как PHP. Найдите AddType, а затем убедитесь, что есть запись для PHP и что она раскомментирована .

Убедитесь, что ваш файл имеет расширение .php или любое другое расширение, указанное в определении MIME в пункте #3,, иначе он не будет выполнен как PHP.

Убедитесь, что вы не используете короткие теги в файле PHP ( <?), они по умолчанию включены не на всех серверах , и их использование не рекомендуется. Вместо этого используйте <?php (или включите короткие теги в вашем php.ini с short_open_tag=On , если у вас есть код, который полагается на них).

Убедитесь, что вы получаете доступ к своему файлу через webserver, используя URL, как localhost/file.php , а не через локальный доступ к файлу file://localhost/www/file.php

Убедитесь что присутствует файл конфигурации пхп
/etc/apache2/mods-available/php7.conf:


SetHandler application/x-httpd-php
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы