Не могу путь к месту хранения временных файлов прописать как /tmp. Пишет Warning: is_dir() [function.is-dir]...

Главные вкладки

Аватар пользователя VasyOK VasyOK 22 января 2018 в 22:17

Не могу путь к месту хранения временных файлов прописать как /tmp

пишет:

Warning: is_dir() [function.is-dir]: open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/var/www/icoro/data:.) in system_check_directory() (line 2187 of /var/www/icoro/data/www/sitename.ru/modules/system/system.module).
Warning: mkdir() [function.mkdir]: open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/var/www/icoro/data:.) in drupal_mkdir() (line 2439 of /var/www/icoro/data/www/sitename.ru/includes/file.inc).
The directory /tmp does not exist and could not be created.
Warning: is_dir() [function.is-dir]: open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/var/www/icoro/data:.) in system_check_directory() (line 2193 of /var/www/icoro/data/www/sitename.ru/modules/system/system.module).
Warning: is_dir() [function.is-dir]: open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/var/www/icoro/data:.) in system_check_directory() (line 2198 of /var/www/icoro/data/www/sitename.ru/modules/system/system.module).

Подозреваю виноват хостинг.

Комментарии

Аватар пользователя bsyomov bsyomov 23 января 2018 в 0:11

Почему сразу же виноват? Это нормальное ограничение. Хранить временные файлы всех сайтов, всех пользователей в одной папке довольно фиговая идея, в общем-то. А open_basedir помогает улучшить безопасность... И надо бы знать, что это и как работает. Вообще полезно знать окружение в котором работаешь.

Собственно, надо создавать папку в рамках /var/www/icoro/data, и подозреваю, что она там есть даже /var/www/icoro/data/tmp, вероятно...

Аватар пользователя VasyOK VasyOK 23 января 2018 в 1:11

/var/www/icoro/data - там есть /tmp
В разных программах разные атрибуты директории выдавало
написал хостингу вроде все работает

"временные файлы всех сайтов, всех пользователей в одной папке довольно фиговая идея, в общем-то" а как иначе,,. если сайтов на аккаунте много?
/tmp-site1
/tmp-site2
?

Аватар пользователя bsyomov bsyomov 23 января 2018 в 12:24

Там есть не /tmp, а tmp. Это огромная разница! /tmp это папка в корне.
Если сайтов на аккаунте много, да, лучше делать отдельные временные папки. Но если они под одним пользователем, это не очень уж эффективная мера.

Аватар пользователя VasyOK VasyOK 25 января 2018 в 1:05

Проблема вообще решена. Хостинг все сделал.

Оффтоп. А чем чревато, если у нескольких сайтов на аккаунте путь к месту хранения временных файлов прописан, как
/tmp
?

Аватар пользователя bsyomov bsyomov 25 января 2018 в 1:50

Как и любое другое нарушение изоляции, это черевато проблемами безопасности. Более подробно описывать книга выйдет... Smile Хуже всего, что на хостинге пользователей много, а доступ к /tmp будет соответственно у всех аккаунтов.

К тому же, вы вероятно, не понимаете, что /tmp это абсолютный путь, и это папка в корне, а не относительно домашней папки пользователя...

Аватар пользователя ivnish ivnish 25 января 2018 в 12:39

Видимо, подсказали ему, что в корневую /tmp у него нет прав на запись и нужно использовать папку tmp в его домашнем каталоге (как это принято у хостеров)

Аватар пользователя bumble bumble 25 января 2018 в 12:42

Для того чтоб отмечать коммент решением - решение там должно быть доходчиво описано.

Это не так "отметиться" кнопка, а функционал для указания другим пользователям о том что в ТОПе есть решение вопроса.

Аватар пользователя ivnish ivnish 25 января 2018 в 12:53

Дак сам вопрос дурацкий по сути) Зачем пытаться прописать /tmp принудительно, если друпал умеет сам определять временный каталог из настроек виртуального хоста. Васёк ССЗБ

Аватар пользователя VasyOK VasyOK 25 января 2018 в 14:22

"если друпал умеет сам определять"
Не знаю. Был сайт. Временный каталог был прописан, как /tmp
Потом я его клонировал на другой аккаунт этого же хостинга. И возникла проблема топика. Хостер поправил.

Аватар пользователя Semantics Semantics 25 января 2018 в 14:40

Так нет же такой настройки у виртуального хоста, ни в апаче, ни в nginx.
Просто обычно, если /tmp недоступен, то прописывали tmp, и друпал её в корне виртуального хоста создавал, потому что может.

Аватар пользователя VasyOK VasyOK 25 января 2018 в 14:25

Неужели можно сделать кому--то гадость на сайте зная, какой у него каталог временных файлов и купив аккаунт на этом же хостинге?

Аватар пользователя VasyOK VasyOK 25 января 2018 в 14:55

Semantics wrote:

Так нет же такой настройки у виртуального хоста, ни в апаче, ни в nginx.

Просто обычно, если /tmp недоступен, то прописывали tmp, и друпал её в корне виртуального хоста создавал, потому что может.

Ну при установке он создаст. А если сайт клонированный? Неужели Дурапал всегда правильно все пропишет?

Аватар пользователя ivnish ivnish 25 января 2018 в 15:29

На каждом новом хостинге нужно заходить в настройки и стирать значение "временный каталог". Друпал заполнит его автоматически исходя из настроек виртуального хоста на хостинге

Аватар пользователя ХулиGUN ХулиGUN 25 января 2018 в 15:11

Studio VIZA wrote:

Впечатление что Саня под рутом не заходил никада.

root - зло. Если пользовательскому приложению нужны root права для функционирования, это уже звоночек.

Аватар пользователя ХулиGUN ХулиGUN 25 января 2018 в 15:19

Studio VIZA wrote:

я о том что в голове нет общей логики работы сервера.

Ну с использованием всяких ISP, Vesta, etc её и не появится.

Аватар пользователя ianrenton ianrenton 25 января 2018 в 22:32

ХулиGUN wrote:

Studio VIZA написал:

Впечатление что Саня под рутом не заходил никада
livescore.

root - зло. Если пользовательскому приложению нужны root права для функционирования, это уже звоночек.

Я тоже всегда так говорю Smile (хотя не все согласны)