Opencart fopen (/upload / system / logs/): не удалось открыть поток: это каталог


Opencart fopen (/upload / system / logs/): не удалось открыть поток: это каталог

27.03.2015 10:31:22 Просмотров 111 Источник

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

Warning: fopen(/my_path/system/logs/): failed to open stream: Is a directory in /my_path/system/library/log.php on line 6

Это класс журнала:

class Log {
    private $handle;

    public function __construct($filename) {
        //this is line 6
        $this->handle = fopen(DIR_LOGS . $filename, 'a');
    }

    public function write($message) {
        fwrite($this->handle, date('Y-m-d G:i:s') . ' - ' . print_r($message, true) . "\n");
    }

    public function __destruct() {
        fclose($this->handle);
    }
}

Похоже, что $filename var пуст. Это также отражает не работающий php, о котором я упоминал выше. Каталог журналов - 755, и я попробовал его с 777.

И вторая ошибка отображается в нижней части моего магазина:

Fatal error: Call to a member function get() on a non-object in /homepages/6/d421894284/htdocs/opencart/upload/index.php on line 104

Кто-нибудь испытывал эту ошибку в Opencart 2.0.1.1? Google говорит, что это должно быть распространенной ошибкой, но я не могу найти решение.

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory#comment46786604_29295436
вы должны включить полный путь из корневого каталога
https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory#comment46786673_29295436
DIR_LOGS определяется в конфигурации.РНР. Это: / homepages / 6 / d421894284 / htdocs / opencart/upload/system/logs/. Я просто заменил его в своем вопросе. И это должен быть правильный путь. Я ничего не изменил

Ответы - Opencart fopen (/upload / system / logs/): не удалось открыть поток: это каталог / Opencart fopen(/upload/system/logs/): failed to open stream: Is a directory

billynoah

28.03.2015 11:26:05

$filenameи убедитесь, что у вас есть что-то там.

Если это так, то следующим шагом будет проверка основного индекса.php и убедитесь, что код не поврежден вокруг строки 68, которая должна быть :

Admin > System > Settings > Server > Error Log Filename
Владимир Чикуров

14.05.2015 04:05:49

Я столкнулся с той же проблемой. Сразу после установки появился в админке:

Warning: fopen (/ my_path / system / logs /): failed to open stream: Is a directory in /my_path/system/library/log.php on line 6

Вот решение этой проблемы: Разрешения на папку с логами после установки можно оставить 755! Этот файл находится в /var/www в/my_account/данные/ВСП/мой_сайт.ком/система/журналы/openbay.журнал нужно поставить разрешение 777. После этого я оставил все ошибки.

https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory/30227650#comment48559289_30227650
Разрешение 777 в той же папке должно быть помещено на файлы ocmod.журнал и ошибка.бревно
https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory/30227650#comment97209322_30227650
Папки должны быть 755, файлы должны быть 644. 777 небезопасен и может быть заблокирован вашим веб-хостингом.
Abstractcodify

26.08.2016 07:27:04

$filename пустое, найдите имя файла, потому что оно не существует.

<?php
class Log {
    private $handle;

    public function __construct($filename) {
        if (! empty( $filename )) {
          $this->handle = fopen(DIR_LOGS . $filename, 'a');
        }
    }

    public function write($message) {
        fwrite($this->handle, date('Y-m-d G:i:s') . ' - ' . print_r($message, true) . "\n");
    }

    public function __destruct() {
        fclose($this->handle);
    }
}

проверьте, не пуст ли $filename

Subhash Jain

22.02.2017 01:45:57

Мы столкнулись с той же проблемой и смогли решить ее, поместив правильные данные в эти два файла:

  1. конфиг.РНР
  2. админ/конфиг.РНР

Пожалуйста, убедитесь, что вы поставили правильную запись для DB_PREFIX:

define('DB_PREFIX', 'oc_');
https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory/42389013#comment71961407_42389013
Привет Дитер Meemken, вы должны убедиться, что вы поставили правильный префикс перед именем данных. Мы получили ту же ошибку-предупреждение: fopen (/my_path/system/logs/): не удалось открыть поток: это каталог в /my_path/system/library/log.php на строке 6-из-за этой неправильной записи. Мы поставили правильную запись и ошибки больше не было.
Abdallah Awwad Alkhwaldah

22.10.2017 03:08:29

эта проблема возникает, когда система не может создать папку хранения, которая содержит кэш журналов и папки модификации из-за проблем с разрешениями, несколько раз проблема возникает после переноса каталога хранения с панели мониторинга , поэтому для решения проблемы вам нужно сделать следующее

  1. создайте папку хранения в корне приложения sudo mkdir storage
  2. установите для новой папки значение 777 или 775 или 755 разрешений sudo chmod -R 755 storage
  3. создайте папку хранения в корне приложения sudo mkdir logs
  4. установите для новой папки значение 777 или 775 или 755 разрешений sudo chmod -R 755 logs
  5. создайте папку хранения в корне приложения sudo mkdir modification
  6. установите новую папку в 777 или 775 или 755 разрешений sudo chmod -R 755 modification
https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory/46873884#comment93748119_46873884
журналы и папки изменений внутри папки хранения не являются корневыми. Дерево должно быть для хранения\, \хранения Cache\журналы хранения\\, \хранения\модификации \хранения\сессии
https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory/46873884#comment97209209_46873884
Нет, не делайте этого, вы никогда не должны устанавливать папки на 777, а также быть небезопасными, многие веб-хосты будут фактически блокировать вещи, если вы это сделаете. Папки должны быть 755, а файлы-644.
George Kokorikos

25.03.2018 05:57:48

ответ прост, изменение - - - - >

define('DIR_STORAGE','/storage/');
define('DIR_STORAGE', DIR_SYSTEM . '/storage/');

и сделайте это для конфигурации.PHP и конфигурации.на PHP в папке админ , менять обе папки

https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory/49477207#comment102946610_49477207
Решить мою проблему. Спасибо.
Kim Duc

14.10.2018 02:02:10

chcon -R -t httpd_sys_rw_content_t /var/www/...

попробовать это. я решил эту ошибку с помощью команды.

Ray

19.03.2019 12:41:09

Ищет файлы в папке хранения. Делайте это шаг за шагом

cd /var/www/opencart_storage/
mkdir logs
chmod 777 logs
cd logs
vim error.log 
chmod 777 error.log
vim googleshopping.0.log  
chmod 777 googleshopping.0.log
vim ocmod.log  
chmod 777 ocmod.log
vim openbay.log
chmod 777 openbay.log

перезагрузки вашего сайта OpenCart

Престо!

https://stackoverflow.com/questions/29295436/opencart-fopen-upload-system-logs-failed-to-open-stream-is-a-directory/55230437#comment97209265_55230437
Опять же, не делайте этого. Папки и файлы не должны быть 777, а также быть небезопасными, многие веб-хосты будут блокировать их после этого. Папки должны быть 755, файлы должны быть 644.
Mujahid Bhoraniya

11.10.2019 09:33:20

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

Примечание: Вы можете изменить конфигурацию.PHP и конфигурации.php внутри папки администратора оба файла обязательны.

define('DIR_STORAGE', 'D:/xampp/htdocs/opencart_project/system/storage/');

OR

define('DIR_STORAGE', 'D:/xampp/htdocs/opencart_project/storage/');
Помочь в развитии проекта:
Закрыть X