Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

SOS! Не загружает картинки из-за open_basedir


Recommended Posts

Доброе утро всем :-) 

Появилась ОГРОМНАЯ необходимость в .htaccess сайта прописать запрет, на выход в директории выше.
Прописал по рекомендациям хостера:

php_value open_basedir "/home/u/user1987652/test1.ru/public_html/"

 

Теперь при загрузке фото ( например к товаров или к категории ) - вылезает ошибка:
Внимание! Файл не может быть загружен по неизвестным причинам!
 

Если убрать open_basedir - все ок. Хостер ничем помочь не может, а исправить очень надо :rolleyes: Вся надежда на вас. Заранее очень благодарен за любую оказанную помощь.

Просто не понимаю - почему фото не загружаются, если их директория находится в public_html/image/

Надіслати
Поділитися на інших сайтах


Потому что системный кеш лежит в папке storage вынесенной выше public_html, это рекомендует сделать опенкарте при первичной настройке

Скорее всего, какой-то из модулей слайдера/категорий/карточек товара, хранит в storage/cache пути к кешированный изображениям из image/cache 

 

решением может быть перемещение папки storage внутрь public_html

 

ВАЖНО: если надумаете перемещать папку, не забудьте изменить конфиги и прописать к ней новый правильный путь (config.php в корневой папке и в папке admin, пункт DIR_STORAGE)

Надіслати
Поділитися на інших сайтах


41 минуту назад, paulkouls сказал:

Потому что системный кеш лежит в папке storage вынесенной выше public_html, это рекомендует сделать опенкарте при первичной настройке

Скорее всего, какой-то из модулей слайдера/категорий/карточек товара, хранит в storage/cache пути к кешированный изображениям из image/cache 

 

решением может быть перемещение папки storage внутрь public_html

 

ВАЖНО: если надумаете перемещать папку, не забудьте изменить конфиги и прописать к ней новый правильный путь (config.php в корневой папке и в папке admin, пункт DIR_STORAGE)

эмммм.
у меня идет так:

site.ru/public_html/

а в нем уже все
/admin
/image
/catalog
/system

Надіслати
Поділитися на інших сайтах


5 минут назад, REDDI сказал:

эмммм.
у меня идет так:

site.ru/public_html/

а в нем уже все
/admin
/image
/catalog
/system

Прочитайте ещё раз внимательно. Папка storage вынесена за пределы public_html 

Надіслати
Поділитися на інших сайтах


вообщето это в 3 версии вынесено, насколько я знаю, а во второй - нет

@REDDI, версию вашего опенкарта в студию))

Змінено користувачем Prooksius
Надіслати
Поділитися на інших сайтах

1 час назад, Prooksius сказал:

вообщето это в 3 версии вынесено, насколько я знаю, а во второй - нет

@REDDI, версию вашего опенкарта в студию))

2.3.0.2.3

Надіслати
Поділитися на інших сайтах


21 минуту назад, spectre сказал:

думаю потому что картинка сначала грузится в /tmp или куда там еще

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

Надіслати
Поділитися на інших сайтах

Ну так и есть:
 

Цитата
Вы всегда можете ограничить защиту для определенных папок, без его полного отключения функции open_basedir. Для этого просто внесите список разрешенных папок, разделяя их двоеточием. Например, для разрешения доступа к директории /new_directory код будет таким:

 

php_admin_value open_basedir “/home/user_account/:/usr/lib/php:/usr/local/lib/php:/tmp” php_admin_value open_basedir “/home/user_account/:/usr/lib/php:/usr/local/lib/php:/tmp:/new_directory”
Перезапустите Apache сервер. Обратите внимание, что ограничение ввреху, это только префикс, а сама папка. Т.е. использование, к примеру, “open_basedir = /dir/incl” также откроет доступ к папкам “/dir/include” или “/dir/incls”, если таковые имеются. Для ограничения доступа только к одной специфической директории, используйте слеш в конце: “open_basedir = /dir/incl/”.
 

https://web-zones.ru/threads/nastrojka-open_basedir-v-php.873/

Змінено користувачем Prooksius
  • +1 1
Надіслати
Поділитися на інших сайтах

7 часов назад, REDDI сказал:

php_value open_basedir "/home/u/user1987652/test1.ru/public_html/"

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

  • +1 1
Надіслати
Поділитися на інших сайтах

1 час назад, REDDI сказал:

у меня вообще нет такой папки на хостинге) не в /public_html/ , не в /site.ru/

И не в / ?

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.