Переводим сайт в режим "Только для чтения"

Прислано: VladSavitsky

чт, 27/11/2008 - 11:33

Задача

Нужно временно отключить возможность добавлять/менять контент на сайте. Это может быть полезно при смене NS-серверов и переносе на другой сервер, когда нужно, чтобы сайт оставался доступен, но контент не менялся.

Решение

По сути нужно перевести сайт в режим "Только для чтения" - посетители могут только читать контент, но ничего не должны менять.

Режим "Обслуживание сайта" (режим выполнения технических работ) в этом случае не подходит, потому что сайт нельзя будет читать.

  • Открыть страницу "Разрешения" (/admin/user/permissions в Drupal 6)
  • Сохранить страницу на своем компьютере, чтобы можно было потом восстановить права доступа или воспользоваться модулем Site Documentation (документирование настроек сайта)
  • Снять галочки для нужных ролей (Гости, Регистированные пользователи и всем, кто может случайно вносить изменения в неподходящий момент) для действий, которые могут менять контент сайта.

Действия пользователей, которые могут менять контент сайта

модуль comment

  • размещать комментарии

модуль book

  • добавлять материалы в подшивки
  • создавать новые подшивки

модуль node

  • доступ к содержанию сайта
  • управлять типами материалов
  • управлять материалами
  • create *
  • delete any *
  • delete own *
  • delete revisions
  • edit any *
  • edit own *
  • переключаться между редакциями

модуль user

  • изменять свое имя пользователя

Подсказка!
Не забудьте включить эти права снова.

Полезные ссылки

Вопрос

Может быть есть лучшее решение? А то очень много манипуляций.
Может быть есть модуль заморский и неведомый?

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано Ильич Рамирес Санчес в чт, 27/11/2008 - 13:23.

"VladSavitsky" написал(а):

Может быть есть лучшее решение? А то очень много манипуляций.

сохранить выборку разрешений во табличку.
убрать разрешения на запись.
...........
подождать пока все устаканится.
вернуть все на место заранее заготовленным запросом :)


Опубликовано Kudja@drupal.org в чт, 27/11/2008 - 15:22.

Согласен с Ilya1st - SQL Вам в руки


Опубликовано VladSavitsky в чт, 27/11/2008 - 16:26.

Отлично! Спасибо.
Ещё раз подтверждается мудрость "У советующихся мудрость" (сами знаете откуда цитата).

Можно так:

  1. Сделать дамп таблицы permission с удалением таблицы, если она существует.
  2. В админке друпал выставить нужные права для режима "Только для чтения"
  3. Опять сделать дамп

Получаем 2 файла с sql-сценариями. Один включает режим, а другой выключает.

Единственный недостаток, если дампы сделаны были давно и права с тех пор поменялись, то можно восстановить не не права доступа.

Как это можно обойти?


Опубликовано compawa в пт, 28/11/2008 - 06:50.

Наверное можно так:

1. Делаем дамп таблицы с нужными правами только на чтение.

2. Делаем бекап базы полностью.

3. Включаем режим только на чтение.

4. Когда нужно дать полный доступ просто восстанавливаем базу из бекапа.


Опубликовано VladSavitsky в пт, 28/11/2008 - 12:35.

Я подразумевал, что режим "только для чтения" это значит, что никто извне не может добавлять контент, а админ в это время может что-то менять внутри.
Если восстанавливать полный дамп базы, то эти данные будут уничтожены.


Опубликовано VladSavitsky в вт, 03/11/2009 - 21:04.

Рецепты создания сайтов на DrupalРешение было сохранено на сайте DrupalCookBook.ru:
Перевести сайт в режим "Только для чтения".
Авторы, предложившие решения, также указаны в сохранённой статье.


Новое на сайте

Ссылки партнёров