Сегодня возник косяк с сервером и вместо сайта выдает текст ошибки, что на скриншоте выше + ещё 14 бонусных ошибок следом. Но я думаю не стоит расстраиваться, в этой статье мы решим эту проблему.
/var/www/…/data/www/…./framework/yiilite.php(225)
сайт убрал специально, что бы было легко понять ( вместо сайта стоят …).
</pre> <pre>else if(isset(self::$_coreClasses[$className])) <span class="ln">214</span> include(YII_PATH.self::$_coreClasses[$className]); <span class="ln">215</span> else <span class="ln">216</span> { <span class="ln">217</span> // include class file relying on include_path <span class="ln">218</span> if(strpos($className,'\\')===false) // class without namespace <span class="ln">219</span> { <span class="ln">220</span> if(self::$enableIncludePath===false) <span class="ln">221</span> { <span class="ln">222</span> foreach(self::$_includePaths as $path) <span class="ln">223</span> { <span class="ln">224</span> $classFile=$path.DIRECTORY_SEPARATOR.$className.'.php'; <span class="error"><span class="ln error-ln">225</span> if(is_file($classFile)) </span><span class="ln">226</span> { <span class="ln">227</span> include($classFile); <span class="ln">228</span> break; <span class="ln">229</span> } <span class="ln">230</span> } <span class="ln">231</span> } <span class="ln">232</span> else <span class="ln">233</span> include($className.'.php'); <span class="ln">234</span> } <span class="ln">235</span> else // class name with namespace in PHP 5.3 <span class="ln">236</span> { <span class="ln">237</span> $namespace=str_replace('\\','.',ltrim($className,'\\')); </pre> <pre>
РЕШЕНИЕ ДАННОЙ ОШИБКИ ПРОСТОЕ
Просто находим httpd на своем сервере для конкретного домена и меняем в двух строчках текст путь на «none». Ниже выкинул весь конфиг для данного сайта, а за ним исправленный конфиг.
<VirtualHost 319.139.209.49:80> ServerName afirewall.ru ServerAlias www.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 <FilesMatch "\.ph(p[3-5]?|tml)$"> SetHandler application/x-httpd-php </FilesMatch> <FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch> <IfModule php5_module> 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:." </IfModule> <IfModule php7_module> 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:." </IfModule> </VirtualHost> <Directory /var/www/afirewall.ru/data/www/afirewall.ru> Options +Includes -ExecCGI <IfModule php5_module> php_admin_flag engine on </IfModule> <IfModule php7_module> php_admin_flag engine on </IfModule> </Directory> <Directory /var/www/afirewall.ru/data/www/afirewall.ru/webstat> DirectoryIndex index.html AddDefaultCharset UTF-8 </Directory>
Стоит обратить внимание на следующую строку
php_admin_value open_basedir "/var/www/afirewall.ru/data:."
и заменить её на эту
php_admin_value open_basedir "none"
Ниже правильно изменённый конфиг для сайта с уже внесенными исправелниями:
<VirtualHost 312.132.226.429:80> ServerName afirewall.ru ServerAlias www.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 <FilesMatch "\.ph(p[3-5]?|tml)$"> SetHandler application/x-httpd-php </FilesMatch> <FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch> <IfModule php5_module> 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" </IfModule> <IfModule php7_module> 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" </IfModule> </VirtualHost> <Directory /var/www/afirewall.ru/data/www/afirewall.ru> Options +Includes -ExecCGI <IfModule php5_module> php_admin_flag engine on </IfModule> <IfModule php7_module> php_admin_flag engine on </IfModule> </Directory> <Directory /var/www/afirewall.ru/data/www/afirewall.ru/webstat> DirectoryIndex index.html AddDefaultCharset UTF-8 </Directory>
Обязательно после сохранения перезагрузить httpd службу или весь сервер ( не принципиально)
Поздравляю на этом все!
Если остались вопросы по данному решению, пишите в комментариях, будем рады помочь и ответить на ваши вопросы.