После переезда сайта в Drupal открывается только первая страница
30 Oct 2010 | Автор: dd |Пришлось мне тут переносить один сайт на Drupal который моей конторе достался от одного разработчика- ue-бана. Вкратце, чел со своей конторой доил агентство как мог- выставив не высокие цены за разработку, вламывал в качестве работы над модулями в среднем от 10 до 24 часов за доработку стандартных модулей и прочее, при этом и грел их на хостинге.
Когда я пришел и попросил объяснить собственно что к чему – чувак занял совершенно хамскую позицию. При том что агентство зачем то хостилось через него и когда ему сказали что платить за дедик 9к контора не хочет (он грузил меня конфигурациями которых у хостера нет в принципе), впал в неистовство, которое только усугубилось когда у него не получилось меня грузить на айтишные темы.
Итогом стала его заява- забирайте все сайты сами как есть. После чего начал срать по мелочам- типо делай бэкап базы сам с фтп, при первом копировании системы оказалось что почему то переписалось все, кроме папок модулей, в подпапках modules, в третий раз сделали мне несколько бэкапов базы, причем помимо того что два снимка отличаются вдвое, еще и сайт перестал открываться.
То есть заходишь на сайт- на главной странице все пучком, а вот остальные странички не грузятся- говорят что извините, но не можем найти такую страницу. Понятно что дело не чисто, понятно что в базе какая то лажа с алиасами, так что начал ковыряться, в очередной раз помянув граждан добрым словом.
Собственно для начала можно попытаться открыть ссылочку хостнейм/?q=admin/settings/clean-urls и зайти оттуда админом, но вероятнее всего ничего не получится, но если по этому адресу высветится такая панель логина- то это оно самое.
Для начала проверяем .htaccess на предмет записи вида:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</IfModule>
Если оно есть и все равно ничего не работает, то вооружаемся кофием и идем в phpMyAdmin, где ищем по базе строчку clean_url, скорее всего она находится в табличке variable со значение s:1:”1″; которое мы меняем на значение s:1:”0″; после чего очищаем кэш всем табличкам начинающимся с префикса cache_ выбрав Очистить или TRUNCATE. После этого все начинает открываться, но без использования чистых ссылок, то есть в виде /?q=имя страницы
Собственно теперь последний момент- идем в админку и снова включаем чистые ссылки в настройке сайта: Administer > Site configuration > Clean URL.
Теги: drupal, настройка системы, сайты
Автор:Евгений на 04 Apr 2012
Спасибо Вам огромное, весь мозг себе сломал с этой проблемой.
Еще раз спасибо!!!
[Reply]
anchous Reply:
April 4th, 2012 at 3:41 pm
пжлста, всегда приятно когда записки кому то приносят пользу.
[Reply]
Автор:Александр на 11 Apr 2012
Огромное спасибо. Для новичков (таких как я): чтобы сделать “TRUNCATE” надо выбрать таблицу и зайти в операции.
[Reply]
anchous Reply:
April 11th, 2012 at 6:42 pm
спасибо за дополнение
[Reply]
Автор:Beholder на 09 Mar 2013
Спасибо огромное, 2 дня просидел с этой проблемой, причем изначально все работало, потом непонятно почему перестало и заработало только после внесения этих дополнений в .htaccess.
Не могли бы вы объяснить это колдунство?)
[Reply]
anchous Reply:
March 18th, 2013 at 10:53 pm
обыкновенное шаманство..
включаем значение параметра, который не ставится через админку
[Reply]
Автор:Андрей на 20 May 2018
Спасибо! Отличная статья помогла на 3 сайтах!
[Reply]
anchous Reply:
May 30th, 2018 at 1:37 am
спасибо за апдейт, частенько какие то фичи перестают работать на новых версиях
[Reply]
Автор:Иван на 01 Nov 2018
Огромное Вам спасибо!
Вы лучший!
Я искал решение данной проблемы 2 месяца.
Фрилансеры мне запросили на отмашь 10000 рубликов. Вы съэкономили мне деньги, время и силы.
[Reply]