Могу ли я настроить Drupal так, чтобы доступ к сайту шел через http, а доступ к admin'ке сайта шел через HTTPS?
Если да, то насколько это сложно?
Просто не хочется, чтобы пароли шли в открытом виде по сети.
Сорри, если это простая тема обсуждалась сотни раз. Просто не смог найти ее поиском. Если обсуждалась, бросьте пожалуйста ссылки на готовые рецепты.
Комментарии
Сделать отдельный виртхост, например с поддоменом adm, указывющий на ту же базу, с теми же настройками. Настроить виртхост на работу с https. Удобно также в settings.php админского сайта прописать front_page => admin, а для основного сайта дефолтную главную страницу (front_page => node или что там предполагает быть). Тогда по https://adm.example.com будем попадать в админку, по http://example.com - на остальной сайт. Далее в друпале следует ограничить доступ к админке с базового сайта, это можно сделать по-разному. Например задействовать функцию custom_url_rewrite_inbound(), проверяющую входящие URL. Эта функция прописывается в settings.php базового сайта, в ней надо на все обращения начинающиеся с 'admin' делать например редирект на главную. Ещё один красивый вариант - модуль в друпале с обработчиком хука menu_alter(), можно в нём проверять домен сайта (по глобальной переменной из окружения PHP) и для сайтов кроме adm.example.com удалять пункт админского меню из меню навигации. Дополнительно доступ к adm.example.com можно ограничить http-авторизацией.
Просто апач собрать с поддержкой https. И закладку сделать на https://site.ru
Автору топика совет - попробовать просто буковку S дописать в адресе, быть может апач уже с https стоит.
В любом случае, если админ зайдет на сайт по http (читать ноды будет, а не только в /admin/* будет рыться) - пароль передается в открытом виде
Так в этом фишка разделения админки и сайта по двум хостам с дополнительной http-авторизацией на админке. Если доступ к пути /admin* закрыт на основном сайте, то даже если кто-нибудь узнает админский пароль, на основном сайте в админку ему не попасть, а на админском подсайте потребуется ещё один пароль. Для удобства можно создать себе двух юзеров и админом залогиниться на adm.example.com, а на основной сайт ходить юзером без админских привилегий.
Я понял, но не всем пользователям (новичкам, имею в виду) будет понятно. В своё время тоже долго рылся на тем, а как же сделать на сайте https, что устанавливать надо А оказалось за всё апач отвечает.
Аксель, что за модуль с "с обработчиком хука menu_alter(),", где его достать?
Я имел ввиду создание модуля, в котором будет обрабатываться хук menu_alter().
Аксел,
спасибо, за мудрые мысли и развернутый исчерпывыющий ответ.
Подскажите пожалуйста, как можно настроить апач, чтоб все по https передавалось.
Можно попробовать для этой цели использовать вместо https авторизацию по OpenID...