Сегодня возник косяк с сервером и вместо сайта выдает текст ошибки, что на скриншоте выше + ещё 14 бонусных ошибок следом. Но я думаю не стоит расстраиваться, в этой статье мы решим эту проблему.

И так вот эта веселая ошибка текстом,

is_file(): open_basedir restriction in effect. File(/usr/share/pear/Twig_Loader_Filesystem.php) is not within the allowed path(s): (/var/www/…/data:.)

/var/www/…/data/www/…./framework/yiilite.php(225)

сайт убрал специально, что бы было легко понять ( вместо сайта стоят …).


else if(isset(self::$_coreClasses[$className]))
214             include(YII_PATH.self::$_coreClasses[$className]);
215         else
216         {
217             // include class file relying on include_path
218             if(strpos($className,'\\')===false)  // class without namespace
219             {
220                 if(self::$enableIncludePath===false)
221                 {
222                     foreach(self::$_includePaths as $path)
223                     {
224                         $classFile=$path.DIRECTORY_SEPARATOR.$className.'.php';
225                         if(is_file($classFile))
226                         {
227                             include($classFile);
228                             break;
229                         }
230                     }
231                 }
232                 else
233                     include($className.'.php');
234             }
235             else  // class name with namespace in PHP 5.3
236             {
237                 $namespace=str_replace('\\','.',ltrim($className,'\\'));


                  

РЕШЕНИЕ ДАННОЙ ОШИБКИ ПРОСТОЕ

Просто находим httpd  на своем сервере для конкретного домена и меняем в двух строчках текст путь на «none». Ниже  выкинул весь конфиг для данного сайта, а за ним исправленный конфиг.


 ServerName afirewall.ru
 ServerAlias afirewall.ru
 DocumentRoot /var/www/afirewall.ru/data/www/afirewall.ru
 ServerAdmin mon1111@gmail.com
 AddDefaultCharset off
 SuexecUserGroup afirewall.ru afirewall.ru
 CustomLog /var/www/httpd-logs/afirewall.ru.access.log combined
 ErrorLog /var/www/httpd-logs/afirewall.ru.error.log
 
 SetHandler application/x-httpd-php
 
 
 SetHandler application/x-httpd-php-source
 
 
 php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f mon3123123@gmail.com"
 php_admin_value upload_tmp_dir "/var/www/afirewall.ru/data/mod-tmp"
 php_admin_value session.save_path "/var/www/afirewall.ru/data/mod-tmp"
 php_admin_value open_basedir "/var/www/afirewall.ru/data:."
 
 
 php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f mon3123123@gmail.com"
 php_admin_value upload_tmp_dir "/var/www/afirewall.ru/data/mod-tmp"
 php_admin_value session.save_path "/var/www/afirewall.ru/data/mod-tmp"
 php_admin_value open_basedir "/var/www/afirewall.ru/data:."
 


 Options +Includes -ExecCGI
 
 php_admin_flag engine on
 
 
 php_admin_flag engine on
 


 DirectoryIndex index.html
 AddDefaultCharset UTF-8

Стоит обратить внимание на следующую строку

php_admin_value open_basedir "/var/www/afirewall.ru/data:."

и заменить её на эту

php_admin_value open_basedir "none"

Ниже правильно изменённый конфиг для сайта с уже внесенными исправелниями:


 ServerName afirewall.ru
 ServerAlias afirewall.ru
 DocumentRoot /var/www/afirewall.ru/data/www/afirewall.ru
 ServerAdmin mon31231231@gmail.com
 AddDefaultCharset off
 SuexecUserGroup afirewall.ru afirewall.ru
 CustomLog /var/www/httpd-logs/afirewall.ru.access.log combined
 ErrorLog /var/www/httpd-logs/afirewall.ru.error.log
 
 SetHandler application/x-httpd-php
 
 
 SetHandler application/x-httpd-php-source
 
 
 php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f mon123123123@gmail.com"
 php_admin_value upload_tmp_dir "/var/www/afirewall.ru/data/mod-tmp"
 php_admin_value session.save_path "/var/www/afirewall.ru/data/mod-tmp"
 php_admin_value open_basedir "none"
 
 
 php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f mon12312312312@gmail.com"
 php_admin_value upload_tmp_dir "/var/www/afirewall.ru/data/mod-tmp"
 php_admin_value session.save_path "/var/www/afirewall.ru/data/mod-tmp"
 php_admin_value open_basedir "none"
 


 Options +Includes -ExecCGI
 
 php_admin_flag engine on
 
 
 php_admin_flag engine on
 


 DirectoryIndex index.html
 AddDefaultCharset UTF-8

Обязательно после сохранения перезагрузить httpd службу или весь сервер ( не принципиально)

Поздравляю на этом все!

Если остались вопросы по данному решению, пишите в комментариях, будем рады помочь и ответить на ваши вопросы.