Говорю  Пишу  Смотрю  Слушаю  Читаю  Думаю  Смеюсь  Фотаю  Wordpress

Джумляндия

Понедельник, 26 марта, 2012

Не люблю я джумлу. Не моя это цэмэмска. Куча каталогов, подкаталогов, подподкаталогов. Куча багов, и слабое сообщество. Но джумлу любят клиенты. И это здесь ключевой момент.  Итак, очередной перенос сайта на джумле и косяки с этим связанные.

Косяк #1

Сайт закинут на хостинг, дамп БД — на вновь созданной БД, но вместо сайта мы видим приветливую картинку, говорящую о том, что БД недоступна. Ау! Где ты, БД?! Так, глядим configuration.php в корне сайта — имя БД, пароль, логин… Да все в порядке! Аааа, стоп. Идем в панель управления хостинга и с удовольствием убеждаемся, что БД-то у нас не на локалхосте лежит, как у порядочных людей, а имеет специальный адрес. Срочно правим mosConfig_host, прописываем туда хост БД. Ура, заработало! Однако, никакое не ура. Вместо буковок у нас вопросительные знаки ????? ????????? ??? ?????

Косяк #2

Так, смотрим дамп, ага базу слили в 1251-ой кодировке. Идем в админ-панель БД, сносим нашу новую базу и импортим ее по новой, не забывая  перед этим указать сравнение cp1251. Что, опять нифига не видно. Что ж — это судьба. Идем в includes/database.php, раскомментим это:

//@mysql_query(«SET NAMES ‘UTF8′», $this->_resource);

и поправим так:

@mysql_query(«SET NAMES ‘cp1251′», $this->_resource);

Аааа! Заработало! Так, идем в админку…

Косяк #3

Админки нет — пустой белый лист. А это значит, что из джумлы грубо руками выдран какой-то модуль, который все еще прописан в админке, но физически уже не существует. Так, вспоминаю, клиент жаловался, что когда скинул на комп файлы со старого хоста, антивирус визжал, как резаный. Ищу у себя старую версию сайта этого же клиента и синхронизирую с версией, которая уже на хостинге. И точно — на хосте нет кучи index.html файлов, которые порезал антивир клиента, пока дамп сайта не попал ко мне. Закидываю на сайт недостающее файло — viola! Вот она админка! (В индексах были внедрены вражеские ифрэймы, еще триста штук почистил вручную).

Косяк #4

Тыкаю для очистки совести по ссылкам на главстранице сайта — опа на! Всюду ошибка 404 — страница не найдена. Тееекс… Смотрим, что за ссылки у нас такие битые. Ага, ссылки человекопонятные, т.е. где-то работает SEO модуль и плюс какой-то косяк с рерайтом в htaccess файлике. Косяк искать лень. На старом хосте все работало. Ищем в админке, где отключить все это SEO. Примерно тут:

Сайт  –> Общие настройки — >  Установки Search Engine Optimization -> Включить SEO -> Нет

Идем обратно, о! Заработало! Нет, не люблю я джумлу. Кто любит, отпишитесь в комментах, плиз, что нужно такое правильно теперь написать в .htaccess, чтобы оставить человекопонятные ссылки.

Спасибо за внимание и +100500 мне в карму!

upd: тадаам! Фавиконка, где ты? Ауууу!

Косяк #5 — фавиконка в корне не канает. Это джумла… Говорят, надо закинуть ее в папку с актуальным  шаблоном. Попробуем.

//int hresult = GetEngineObject(«SWRO10200000465468964067″, null, «OpenLicensePassword», ref engine);
//int hresult = GetEngineObject(«SWED10100001561836788611″, null, «_$E14b#xxS91″, ref engine);
int hresult = GetEngineObject(«SWED10100001420406655908″, null, «M4zL2(nBaPS6″, ref engine);