Jump to content
Sign in to follow this  
anvar

function.unlink - Ошибка.

Recommended Posts

Здравствуйте!

 

Периодически на сайте возникает ошибка, текст:

 

Warning: unlink(/var/www/u3242717/data/www/lasumka.ru/system/cache/cache.blog.blogi.1416006157) [function.unlink]: No such file or directory in /var/www/u3242717/data/www/lasumka.ru/system/library/cache.php on line 49Warning: unlink(/var/www/u3242717/data/www/lasumka.ru/system/cache/cache.blog.blogi.1416006157) [function.unlink]: No such file or directory in /var/www/u3242717/data/www/lasumka.ru/system/library/cache.php on line 49

 

Скажите пожалуйста где копать и как исправить?

Share this post


Link to post
Share on other sites

Права на папки system   и  system/cache должны быть 777

Share this post


Link to post
Share on other sites

кэш уже удален.

по идее - должно случаться, когда ПЕРЕД принудительным удалением кэша срабатывает чистка устаревшего по времени.

можно попробовать заглушить такой выхлоп, сделав

unlink($file);
>>

@unlink($file);
файл указан, замену по всему сделайте (там 2 вхождения).

Share this post


Link to post
Share on other sites

Начну с того, что это не ошибка а предупреждение, причем совершенно не критическое.

 

Суть вот в чем, смотря как агрессивно настроено кеширование сервера.

Дело в том, что при запросе php функции file_exists - сервер отвечает, что есть (в кеше сервера информация еще не обновилась) а на самом деле его нет. А в opencart эта функция  кеша

                if (file_exists($file)) {
                    unlink($file);
                }

Просто поставьте @ перед unlink

               if (file_exists($file)) {
                    @unlink($file);
                }

Share this post


Link to post
Share on other sites

Не помогает этот метод экранирования. Точнее не на всех хостах.

Share this post


Link to post
Share on other sites

Не помогает этот метод экранирования. Точнее не на всех хостах.

 

Даже clearstatcache не помогает у некоторых, хотя @ должен отрабатывать

 

http://blog.rodneyrehm.de/archives/12-Improving-Disk-IO-in-PHP-Apps.html

Share this post


Link to post
Share on other sites

Апну чутка. Тоже надоела эта тема. Недавно даже сам визуально увидел вывалившиеся предупреждения в самом верху. Теперь понятно, почему в веб визоре яндекса иногда народ рефрешит страницу. Пробовал экранировать как тут писали.

 

Что, собственно, дает этот способ? В логе обнаружил новую "порцию". Мне главное, чтобы этого не видели посетители. Так как сообщения вылезают редко, что я не могу протестить что там происходит после прописывания @ в паре мест.

 

Так же в php.ini в корне сайте есть пара строчек

;display_errors = 1;
;error_reporting = E_ALL;

 

Может с ними поиграть, например display_errors = off? Судя по гуглу параметр error_reporting отвечает за запись в лог.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.