Здравствуйте!
У меня каждый день всплывает ошибка, ее текст скопирую и приложу.
Каким-то образом меняются права на файл settings.php, он становится доступен только для чтения.
Меняю вручную права, сайт начинает работать.
Но через какое-то время снова такое.
Подскажите пожалуйста, как решить вопрос.
Спасибо!
Комментарии
settings.php и должен быть доступен только для чтения. Само ядро постоянно ставит атрибут "только чтение" на него. Другой вопрос почему вы решили, что проблема именно в этом?
Потому что поменяв права сайт возобновляет работу.
А как именно у вас сайт "не работает"?
Error The website encountered an unexpected error. Please try again later. Error messagePDOException: SQLSTATE[28000] [1045] Access denied for user 'dbu_teatrdom_5'@'10.1.97.232' (using password: YES) in lock_may_be_available() (line 167 of /home/teatrdom/5.teatrdom.z8.ru/docs/includes/lock.inc).
}
Чёт фигня какая-то..
На сайте самодельные модули или просто какой-либо "самодельный" PHP код есть?
пользователь БД "dbu_teatrdom_5" (из сообщения об ошибке) соответствует пользователю БД, указанному в settings.php?
У вас пароль от базы данных неверный.
Больше похоже, бардак с владельцами-правами файлов..
И какой-то код напрямую в БД лезет..
Не вводи людей в заблуждение. Налицо некорректные данные для доступа к базе. Другие причины с вероятностью 99% исключены.
Перечитайте, пожалуйста, топик и комменты автора.. Вдумчиво...
Тоже так думал. Но причём тут тогда права на settings.php?
Больше похоже, что при установке ЧЕМ-ТО прав "только чтение" еще и закрываются все права, наверное для "других" (что-то типа: 440).
А PHP (пользователь www-data) не является ни владельцем файла, ни входит в группу.
И не может "прочитать" settings.php
Тогда получается, это не drupal права на settings.php меняет, права может менять или владелец или рут.
Короче, чтобы не гадать, автору надо выполнить в консоли команду (в папке sites/default):
ls -l settings.php
и показать ее вывод.
2 раза, в ситуациях: когда все работает и когда ничего не работает.
а еще, пройтись поиском по файлам сайта, и поискать, где еще упоминается пользователь БД: "dbu_teatrdom_5".. кроме файла settings.php
Полагаю, права выставляются по крону. А ещё есть вариант, что по системному крону, выполняемому не от того юзера.
Права на файл однозначно следует проверить. Да и на весь друпал тоже. Возможно копировали файлы из-под рута (у меня есть такие знакомые, это не выдумки)
Каждый раз приходится сбрасывать новый пароль к БД и вписывать его в settings.
У меня на другом хостинге этот же сайт (тестовая версия), там такой проблемы нет.
У хостера не пробовали спросить почему у них меняются пароли к БД?
Ну и не стоит исключать саботаж
А от саботажа как-то можно обезопаситься?
Саботаж "не стоит исключать", но впервую очередь лучше узнать у хостера - что и почему происходит.
Мне почему-то кажется, что у Вас не права на settings.php меняются и пароль к БД,
а settings.php почему-то восстанавливается из бэкапа , со старыми правами и старым паролем от БД.
может как раз так кто-то и пытался "саботаж исключить"-)
Спасибо, я уточню!
Потом расскажу, если решу эту "загадку"))