Нет изображений на локальной копии сайта.

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

Аватар пользователя khag khag 10 апреля 2013 в 16:47

Здравствуйте!

Начал локально редактировать уже существующий сайт на 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-программированием практически нет.

ВложениеРазмер
Иконка изображения failed_to_open_stream.png17.18 КБ

Комментарии

Аватар пользователя khag khag 10 апреля 2013 в 17:05

В корневой директории локального сайта создал папку tmp, не знаю по науке это или нет, но сообщение исчезло, а вот изображения так и НЕ появились.

Аватар пользователя khag khag 10 апреля 2013 в 17:46

multpix wrote:
посмотри адрес битого линка на изо, и тебе станет ясно, почему их нет.

Посмотрел, в пути всех изображений не хватает первой директории (в кот. лежат все файлы сайта).
Как это исправить для всех изображений (их несколько десятков)?

Аватар пользователя multpix multpix 10 апреля 2013 в 18:04

ну так настрой виртуальный хост, чтоб в нем не было лишнего каталога
(дабы базовый путь был не localhost/папка_с_друпалом а чет типа mysite.local)

Аватар пользователя drupby drupby 10 апреля 2013 в 18:44

где то в недрах дорга есть контрибный модуль,который как раз решает проблемы с путями , к примеру если поменялся базовый путь(base_path)

Аватар пользователя khag khag 10 апреля 2013 в 23:29

"drupby" wrote:
где то в недрах дорга есть контрибный модуль,который как раз решает проблемы с путями , к примеру если поменялся базовый путь(base_path)

Как раз это мне и нужно.

Вот такие пути решения предлагаются здесь: http://www.drupal.ru/node/45095

Какой вариант подойдет в моём случае, чтобы не страдать после переноса сайта на удаленный сервер?

Может мне в файле .htaccess указать что сайт находится в подпапке корня сервера?

Аватар пользователя drupby drupby 10 апреля 2013 в 23:40

"khag" wrote:
Может мне в файле .htaccess указать что сайт находится в подпапке корня сервера?

это делается в settings.php

Аватар пользователя khag khag 11 апреля 2013 в 17:29

Если не трудно, подскажите, в каких строках и как правильно исправить выражение? Исправлять строку с 'host' => 'localhost' ?

Аватар пользователя multpix multpix 11 апреля 2013 в 17:50

"khag" wrote:

озвучь какой у тебя путь к локальному сайту
и какой по твоему мнению нужен
(в адресной строке)

Аватар пользователя drupby drupby 11 апреля 2013 в 18:27

"khag" wrote:

Если не трудно, подскажите, в каких строках и как правильно исправить выражение?

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';

Аватар пользователя khag khag 22 апреля 2013 в 17:18

"multpix" wrote:
озвучь какой у тебя путь к локальному сайту
и какой по твоему мнению нужен
(в адресной строке)

на данный момент все ссылки на изображения имеют путь: /sites/default/files/... На удаленном сайте эти ссылки работали, а на локалке - нет.
Изображения добавляемые на локальной копии имеют путь: http://localhost/test/sites/default/files/... - именно такой путь мне и нужно задать по-умолчанию.

"drupby" wrote:
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';

Нашел этот кусок кода в settings.php. Что означает "8888" ?

Полный путь я должен написать в конце списка в таком виде: "http://localhost/test/" ?

Спасибо за ответы, прошу прощения, что не мог ответить.