Здравствуйте!
Начал локально редактировать уже существующий сайт на Drupal используя пакет XAMPP (ОС Win XP Pro) предварительно скопировав c удаленного сервера все файлы и БД на локальный комп. Всё заработало, но без изображений. После загрузки одного из изображений вручную через File browser TinyMCE появилась строка ошибки:
«
Warning: file_put_contents(temporary://fil118.tmp): failed to open stream: "DrupalTemporaryStreamWrapper:: stream_open" call failed в функции file_unmanager_save_data() (строка 1900 в файле \xampp\htdocs\site.ru\includes\file.inc)
Невозможно создать файл.»
проблема с таким сообщением об ошибке описывается на: http://www.drupal.ru/node/60052 и http://drupal.org/node/1076762.
Как я понял - это проблема в правах доступа к директории tmp. Как её решить и не наломать дров с безопасностью, когда буду возвращать сайт на хостинг? Однозначного решения, на мой взгляд, в приведенных выше топиках нет.
Чтобы не выскакивало сообщение "failed to open stream" в корневой директории локального сайта создал папку tmp, не знаю по науке это или нет, но сообщение исчезло, а вот изображения, которые были в удаленной версии сайта, так и НЕ появились.
Подскажите, как вернуть изображения сайт?
P.S. Прошу прощения, владею только СSS версткой, опыта работы с CMS и web-программированием практически нет.
Вложение | Размер |
---|---|
![]() | 17.18 КБ |
Комментарии
В корневой директории локального сайта создал папку tmp, не знаю по науке это или нет, но сообщение исчезло, а вот изображения так и НЕ появились.
посмотри адрес битого линка на изо, и тебе станет ясно, почему их нет.
Посмотрел, в пути всех изображений не хватает первой директории (в кот. лежат все файлы сайта).
Как это исправить для всех изображений (их несколько десятков)?
ну так настрой виртуальный хост, чтоб в нем не было лишнего каталога
(дабы базовый путь был не localhost/папка_с_друпалом а чет типа mysite.local)
где то в недрах дорга есть контрибный модуль,который как раз решает проблемы с путями , к примеру если поменялся базовый путь(base_path)
Как раз это мне и нужно.
Вот такие пути решения предлагаются здесь: http://www.drupal.ru/node/45095
Какой вариант подойдет в моём случае, чтобы не страдать после переноса сайта на удаленный сервер?
Может мне в файле .htaccess указать что сайт находится в подпапке корня сервера?
это делается в settings.php
Если не трудно, подскажите, в каких строках и как правильно исправить выражение? Исправлять строку с 'host' => 'localhost' ?
озвучь какой у тебя путь к локальному сайту
и какой по твоему мнению нужен
(в адресной строке)
Examples:
* $base_url = 'http://www.example.com';
* $base_url = 'http://www.example.com:8888';
* $base_url = 'http://www.example.com/drupal';
* $base_url = 'https://www.example.com:8888/drupal';
на данный момент все ссылки на изображения имеют путь: /sites/default/files/... На удаленном сайте эти ссылки работали, а на локалке - нет.
Изображения добавляемые на локальной копии имеют путь: http://localhost/test/sites/default/files/... - именно такой путь мне и нужно задать по-умолчанию.
Нашел этот кусок кода в settings.php. Что означает "8888" ?
Полный путь я должен написать в конце списка в таком виде: "http://localhost/test/" ?
Спасибо за ответы, прошу прощения, что не мог ответить.