Страница 1 из 1

Установка Yii2 на виртуальный сервер

Добавлено: 2017.01.11, 16:10
grantey
Здравствуйте!
Такая ситуация возникла: есть два виртуальных сервера, на первом давно работающий проект, поставленный через композер (путь к веб-директории /var/www/clients/client1/web6/web/).
Попросил админа поставить на второй сервер /var/www/clients/client2/web12/web/. Поставили и ошибка при запуске:

Код: Выделить всё

[Tue Dec 27 14:39:26.284003 2016] [:error] [pid 32246] [client 31.173.89.221:10366] FastCGI: server "[b]/var/www/clients/client2/web12/[/b]cgi-bin/php5-fcgi-*-443-lk.mfo-finbroc.ru" stderr: PHP message: PHP Warning:  include([b]/var/www/clients/client1/web6/web/[/b]vendor/yiisoft/yii2/base/BootstrapInterface.php): failed to open stream: Operation not permitted in [b]/var/www/clients/client1/web6/web/[/b]vendor/yiisoft/yii2/BaseYii.php on line 288
[Tue Dec 27 14:39:26.284007 2016] [:error] [pid 32246] [client 31.173.89.221:10366] FastCGI: server "[b]/var/www/clients/client2/web12/[/b]cgi-bin/php5-fcgi-*-443-lk.mfo-finbroc.ru" stderr: PHP message: PHP Warning:  include(): Failed opening '[b]/var/www/clients/client1/web6/web/[/b]vendor/yiisoft/yii2/base/BootstrapInterface.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in [b]/var/www/clients/client1/web6/web/[/b]vendor/yiisoft/yii2/BaseYii.php on line 288
[Tue Dec 27 14:39:26.284010 2016] [:error] [pid 32246] [client 31.173.89.221:10366] FastCGI: server [b]"/var/www/clients/client2/web12/[/b]cgi-bin/php5-fcgi-*-443-lk.mfo-finbroc.ru" stderr: PHP message: PHP Warning:  include(): open_basedir restriction in effect. File([b]/var/www/clients/client1/web6/web/[/b]vendor/yiisoft/yii2/base/UnknownClassException.php) is not within the allowed path(s): (/var/www/clients/client2/web12/web:/var/www/clients/client2/web12/private:/var/www/clients/client2/web12/tmp:/var/www/lk.mfo-finbroc.ru/web:/srv/www/lk.mfo-finbroc.ru/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin) in /var/www/clients/client1/web6/web/vendor/yiisoft/yii2/BaseYii.php on line 288
Как два виртуальных сервера пересеклись, ссылаются друг на друга?

Ладно, удалил проект со второго сервера, распаковал basic для интереса из чистого архива на первый. Эта же ошибка в обратную сторону:

Код: Выделить всё

[Wed Jan 11 15:13:31.774390 2017] [:error] [pid 20280] [client 31.173.89.221:4762] FastCGI: server [b]"/var/www/clients/client1/web6/[/b]cgi-bin/php5-fcgi-*-443-lk.mygoodmoney.ru" stderr: PHP message: PHP Fatal error:  require(): Failed opening required '[b]/var/www/clients/client2/web12/web/[/b]web/../vendor/autoload.php' (include_path='.:/usr/share/php:/usr/share/pear') in [b]/var/www/clients/client1/web6/web/[/b]basic/web/index.php on line 7
В замешательстве. Первый проект на первом сервере продолжает работать нормально! Сколько раз ставил Yii2 никогда не было такого. Доступа к серверам не дают, могу только либо просить ставить через композер, либо через фтп заливать. В чем может быть проблема?

Re: Установка Yii2 на виртуальный сервер

Добавлено: 2017.01.11, 16:14
zelenin
failed to open stream: Operation not permitted

прав видимо не хватает

Re: Установка Yii2 на виртуальный сервер

Добавлено: 2017.01.11, 16:38
grantey
Мне кажется дело не в этом. Ставили из под рута, поидее второй сервер вообще не должен был знать про существование первого. В обратную же такая же ошибка, при том что залил по фтп чистый проект, ссылается на удаленные файлы!

Код: Выделить всё

[Wed Jan 11 16:32:10.403935 2017] [:error] [pid 24398] [client 31.173.89.221:11623] FastCGI: server "/var/www/clients/client1/web6/cgi-bin/php5-fcgi-*-443-lk.mygoodmoney.ru" stderr: PHP message: PHP Warning:  require(): open_basedir restriction in effect. File(/var/www/clients/client2/web12/web/project-path/web/../vendor/autoload.php) is not within the allowed path(s): (/var/www/clients/client1/web6/web:/var/www/clients/client1/web6/private:/var/www/clients/client1/web6/tmp:/var/www/lk.mygoodmoney.ru/web:/srv/www/lk.mygoodmoney.ru/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin) in /var/www/clients/client1/web6/web/basic/web/index.php on line 7
[Wed Jan 11 16:32:10.403979 2017] [:error] [pid 24398] [client 31.173.89.221:11623] FastCGI: server "/var/www/clients/client1/web6/cgi-bin/php5-fcgi-*-443-lk.mygoodmoney.ru" stderr: PHP message: PHP Warning:  require(/var/www/clients/client2/web12/web/project/web/../vendor/autoload.php): failed to open stream: Operation not permitted in /var/www/clients/client1/web6/web/basic/web/index.php on line 7
[Wed Jan 11 16:32:10.403983 2017] [:error] [pid 24398] [client 31.173.89.221:11623] FastCGI: server "/var/www/clients/client1/web6/cgi-bin/php5-fcgi-*-443-lk.mygoodmoney.ru" stderr: PHP message: PHP Fatal error:  require(): Failed opening required '/var/www/clients/client2/web12/web/project/web/../vendor/autoload.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/clients/client1/web6/web/basic/web/index.php on line 7

Re: Установка Yii2 на виртуальный сервер

Добавлено: 2017.01.11, 17:14
Onotole
open_basedir restriction in effect

Re: Установка Yii2 на виртуальный сервер

Добавлено: 2017.01.12, 09:48
grantey
В этом и проблема, почему при обращении /var/www/clients/client1/web6/web/basic/web/index.php проверяется путь /var/www/clients/client2/web12/web/project-path/web/../vendor/autoload.php на другом сервере. Конечно, он не в списке допустимых путей, на другом виртуальном сервере же, вот и open_basedir restriction in effect.

У меня такое ощущение, что этот путь /var/www/clients/client2/web12/web/project-path/web/../vendor/autoload.php где-то прописался и теперь при запуске новых проектов на yii все они ссылаются на него.

Например еще:

Код: Выделить всё

Failed opening required '/var/www/clients/client2/web12/web/project-path/web/../vendor/autoload.php'  in /var/www/clients/client2/web12/web/web/index.php on line 7

Re: Установка Yii2 на виртуальный сервер

Добавлено: 2017.01.12, 12:14
Onotole
in /var/www/clients/client2/web12/web/web/index.php on line 7

Re: Установка Yii2 на виртуальный сервер

Добавлено: 2017.01.13, 23:06
grantey
Проблему решил, и походу она носила частный характер. Но если кому понадобится. Debian кешировал пути запуска фреймворка, подставлялся путь к веб-директории до первого виртуального сервера, после ребута физического сервера путь менялся на первый запущенный проект. Почему так- хз) Прописал в /vendor/yiisoft/yii2/Yii.php и /vendor/yiisoft/yii2/BaseYii.php абсолютные пути, все нормально.