Переезд на другой хостинг, смена домена и проблемы с картинками

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

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

Помогите разобраться.

17 комментариев

avatar
Если есть SSH то «grep -R stariy_put *» в корне, и меняем на новый, где скажут. Если в базе хранится то поискать не долго.
avatar
Первым делом поискал в базе — не нашел. В противном случае не задавал бы этот вопрос. В базе нет строк об изображениях. По крайней мере я не нашел.
avatar
Ну значит пути в конфигах, я честно сказать не ковырял еще подопытного, грепайте батенка, грепайте. Местные почему молчат — интересно. Картинки кстати блобом могут в базе храниться.
avatar
Пардон, блобом — это как?
avatar
Это бинарный тип у мускуля. Картинки можно хранить.

www.anyexample.com/programming/php/php_mysql_example__image_gallery_(blob_storage).xml
avatar
картинки-то в постах ссылаются на старый хост, надо пробежаться по базе и заменить все вхождения %старыйсайт% на %новыйсайт%
  • xyz
  • 0
avatar
То есть фактически каждый пост руками править. Я так и сделал. Благо постов не так много было.
Но вообще это не есть гуд.
avatar
Зачем руками? :)
Поиск с заменой умеет делать любой текстовый редактор.
avatar
Посты хранятся в mysql, так что тут текстовый редактор не поможет.
avatar
Импорт-экспорт отменили отдельным указом президента? По крайней мере у меня-то как раз получилось.
Кроме того, я очень подозреваю, что функция автозамены есть и в sql-редакторах.
avatar
Именно так и есть. Хорошоб правку в ядро внести, чтобы при загрузке картинок через аплоад в посты вставлялись не прямые, а относительные ссылки вида <img src="/uploads/images/…
Тогда проблем с переездами не будет.
avatar
Согласен.
avatar
Если вы так хотите — седлайте. livestreet.ru/blog/1016.html
Хотя я бы не стал. Причины посмотрите поиском по сайту, многократно обсуждалось.
avatar
вот каким образом, выполняя поочередно команды…

UPDATE `prefix_topic_content` SET `topic_text` = REPLACE(`topic_text`, "http://old.ru", "http://new.ru")
 
UPDATE `prefix_topic_content` SET `topic_text_short` = REPLACE(`topic_text_short`, "http://old.ru", "http://new.ru")
 
UPDATE `prefix_topic_content` SET `topic_text_source` = REPLACE(`topic_text_source`, "http://old.ru", "http://new.ru")
 
UPDATE `prefix_topic_comment` SET `comment_text` = REPLACE(`comment_text`, "http://old.ru", "http://new.ru")
avatar
Спасибо, возьмем на вооружение. Раньше как-то не догадался я :(
avatar
ништяк. задокументировать бы куда-нить
avatar
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.