имею Windows: Apache1.3, MySQL 4.1.8, PHP Version 4.3.10, drupal 6.3
Установился без проблем, работало без нареканий.
Вторая машина: Debian, Apache2, Mysql 5.0.32, PHP 5.2.0, drupal 6.3
Установиться не захотел - прокричал об ошибке синтаксиса в строке 513 у includes/menu.inc . Решений помогающих не нашел.
Скопировал каталог с установленного друпала на Win в папку Deb. Базу перенес. Заработало
Проблема: ввожу логин-пароль - обновляется страница, но изменений никаких. Если ввести неверные данные - выдает соответствующую ошибку.
Другим сайтом проверил сессии - работают. session.save_handler = files установлено. Если изменить значение на user - другие сайты просто отказываются стартовать сессию, а друпал стабильно игнорирует авторизацию.
У меня подозрение, что друпал сессии таки не создает... Есть идеи?
Комментарии
По моему дело как раз в menu.inc . Он ведь отвечает за все переходы по страницам. Что там за ошибка синтаксиса была? Это же файл ядра, ты его изменял что ли? В друпале 6.2 как раз в той функции на которую ругается твой сайт была опечатка (на строчке 517, правда не особо существенная). Ты точно 6.3 устанавливал?
Иногда бывает такая фигня у плохо настроенных серверов, что папок includes есть несколько (у разных сайтов) и иногда в них имена файлов совпадают. Может у тебя два друпала стоит и обращение идет к чужому файлу.
На эту строку ругался при установке.
if ($router_item = db_fetch_array(db_query_range('SELECT * FROM {menu_router} WHERE path IN ('. implode (',', $placeholders) .') ORDER BY fit DESC', $ancestors, 0, 1))) {
Ошибка была именно в месте ... WHERE path IN () ORDER ... Типа неправильный синтаксис. Почему-то не формировал список $placeholders. С первого взгляда не особо понял, что там должно было быть. Буду на работе - посмотрю на виндовом серваке.
По поводу некорректно настроенного сервера, не подскажете список необходимых модулей в апаче, настройки php для linux (рабочем естесственно)?
ЗЫ. зацепил меня этот случай... аж праздник нормально провести не могу -)
Спасибо за отзывы
На сайте drupal.org написано, что такая ошибка бывает на серверах, где установлен FastCGI. Предлагают пропатчить drupal.
Дискуссия здесь: http://drupal.org/node/194331
Патч здесь: http://drupal.org/files/issues/php_self2.patch
Ошибка та же...
user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM dp_menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in /home/chudlo/www/drupal/includes/menu.inc on line 315.
user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY fit DESC LIMIT 0, 1' at line 1 query: SELECT * FROM dp_menu_router WHERE path IN () ORDER BY fit DESC LIMIT 0, 1 in /home/chudlo/www/drupal/includes/menu.inc on line 315.
:/home/chudlo/www/drupal# patch includes/bootstrap.inc ../../php_self2.patch
patching file includes/bootstrap.inc
Hunk #2 succeeded at 305 (offset 5 lines).
Hunk #3 succeeded at 732 (offset 5 lines).
Это очень распространенная ошибка. Связана, как понимаю, с особенностями сервера (скорее всего FastCGI). У некоторых людей вообще никак не решалась, у некоторых решалась следующим образом:
-инсталляция не через localhost, а через 192.168.1.1
-увеличение лимита памяти для PHP (“PHP memory limit” в файле php.ini)
-включение cookie
-очистка старых cookie
-включить javascript
-установка не под IE, а под FireFox 2.0.0.13 .
-drop всех таблиц из database Друпала (то есть не саму database).
-установка патча http://drupal.org/files/issues/menu_rebuild_fix_0.patch или http://drupal.org/files/issues/mask-recovery-261148-7.patch
-установка патча, меняющего base_url .
Судя по тому, что одна и таже проблема решалась по разному, - это баг. Друпал использует что-то, что уже не поддерживается/багнутое в php/mysql .
наблюдение после "-установка патча http://drupal.org/files/issues/menu_rebuild_fix_0.patch или http://drupal.org/files/issues/mask-recovery-261148-7.patch"
Ошибка больше не выскакиевает, Этап установки "Install site", В контенте Home и больше ничего. К конфигурированию не доходит
Фаерфокс успешно дал установиться... (я уже мало что понимаю)
В ИЕ логиниться не хочет (ошибок все так же не сообщает, в фаерфоксе всё ок)
Спасибо за помощь. Список решений тут был дан самый полный, который я встречал. Надеюсь многим поможет.
А у меня сейчас то же самое на 6.4, только вот логиниться и ставится не хочет именно из FF2/FF3/Chrome - в Opera9 и IE6/IE7 все нормально...
патчи не спасают - под FF/Chrome так и не хочет работать...