wordpress open_basedir restriction in effect.

Бывает, что хостинги не совсем корректно настроены и обновление движка wordpress или его плагинов становится недоступным (можно конечно вручную по фтп, но мы не ищем легких путей :-) ), появляется сообщение

Загрузка не удалась. Каталог назначения для файлового потока не существует или недоступен для записи.

или

An error occurred in the upload. Please try again later.

Смотрим error.log сайта и видим примерно такие ошибки:

[Wed Jan 29 14:40:34 2014] [error] PHP Warning:  file_exists() [<a href='function.file-exists'>function.file-exists</a>]: open_basedir restriction in effect. File(/tmp/akismet.tmp) is not within the allowed path(s): (/***/) in /***/wp-includes/functions.php on line 1660
[Wed Jan 29 14:40:34 2014] [error] PHP Warning:  touch() [<a href='function.touch'>function.touch</a>]: open_basedir restriction in effect. File(/tmp/akismet.tmp) is not within the allowed path(s): (/***/) in /***/wp-admin/includes/file.php on line 179
[Wed Jan 29 14:40:34 2014] [error] PHP Warning:  is_writable() [<a href='function.is-writable'>function.is-writable</a>]: open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/***/) in /***/wp-includes/class-http.php on line 144
[Wed Jan 29 14:40:34 2014] [error] PHP Warning:  unlink() [<a href='function.unlink'>function.unlink</a>]: open_basedir restriction in effect. File(/tmp/akismet.tmp) is not within the allowed path(s): (/***/) in /***/wp-admin/includes/file.php on line 493


Для начала посмотрим какую темповую (/tmp) папку «отдает» сервер.
Подключаемся к хостингу по фтп, в корне сайта создаем ttt.php с содержимым:

< ?php phpinfo() ?>

и открываем его в браузере (сайт.ру/ttt.php), ищем строку

upload_tmp_dir   /***/сайт.ру/tmp

и сравним ее значение со значением строки

_SERVER["DOCUMENT_ROOT"]   /***/сайт.ру

Это показывает где должна быть папка tmp.
В корне сайта ее не оказалось, создаем и выставляем на нее права 777.
Проверяем возможность обновления.
Если эффекта нет, настраиваем дальше. Погуглив нашлось 4 варианта дополнительных параметров, с помощью которых можно указать папку tmp (вставлять по одному в конец wp-config.php и проверять возможность обновления):

define('WP_TEMP_DIR','/tmp');
define('WP_TEMP_DIR', ini_get('upload_tmp_dir'));
putenv('TMPDIR=' . ini_get('upload_tmp_dir'));
putenv('TMPDIR=/полный_путь_до/tmp/');

Полный_путь_до/tmp взять из строки

_SERVER["DOCUMENT_ROOT"]   /***/сайт.ру

3й вариант помог))

Скажите свое мнение

ваш email не публикуется. обязательно *

;-) :yawn: :whew: :toivo: :tmi: :time: :thinking: :talking: :sweating: :swear: :sun: :star: :smoke: :smirk: :sleepy: :skype: :shock: :shake: :rofl: :rain: :punch: :puke: :poolparty: :pizza: :phone: :party: :oops: :nod: :no: :ninja: :neutral: :nerd: :music: :muscle: :mrgreen: :movie: :mooning: :mmm: :middlefinger: :makeup: :mail: :mad: :lol: :lipssealed: :kiss: :itwashtme: :inlove: :idea: :hi: :heidy: :heart: :headbang: :happy: :handshake: :giggle: :fubar: :flower: :evilgrin: :emo: :dull: :drunk: :drink: :doh: :devil: :dance: :cry: :cool: :coffie: :clapping: :cash: :call: :cake: :bug: :brokenheart: :bow: :blush: :beer: :bear: :bandit: :arrow: :angry: :angel: :^) :???: :?: :-| :-o :-P :-D :-) :-( :!:

 

*

code

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.