Настройка аутентификации и авторизации в Apache2 с MySQL - PullRequest
2 голосов
/ 18 октября 2010

Я пытаюсь настроить Apache2, чтобы я мог использовать MySQL для аутентификации пользователей для доступа к определенным страницам. Также должна работать авторизация, чтобы разные группы могли открывать разные страницы.

Теперь я много гуглил, но не могу понять, как это сделать. По крайней мере, не для конфигурации, которую я имею. Кажется, не существует версии mod_auth_mysql, которая бы поддерживала мою конфигурацию.

OSX 10.6.4

Apache 2.2

Теперь, как мне добиться этого, не создавая собственное приложение для входа в php, а используя встроенную поддержку Apache2? Я полностью застрял на этом ...

Заранее спасибо!

С уважением, Никлас

Ответы [ 3 ]

1 голос
/ 02 ноября 2010

Я также хотел бы использовать страницу входа taylormade, а не всплывающее окно

....

как этого добиться, не создаваямое собственное приложение для входа в php, но использующее встроенную поддержку Apache2

Короткий ответ: вы не можете.Если вы не переписываете исходный код Apache или не создаете свой собственный модуль, вы не можете смешивать HTTP-аутентификацию с не всплывающими подсказками для входа в систему.

Однако, если вы используете PHP, решение с относительно низкой эффективностью будетиспользовать автоматическое добавление префикса к каждой защищенной странице с проверкой сеанса пользователя.Очевидно, что потребуется немного больше подумать, если его применить к файлам, отличным от исходных файлов PHP (это будет прекрасно работать, если вы скажете Apache применить механизм php, скажем, к файлам .gif, но ваш сценарий должен будетобнаружить и вернуть соответствующий тип MIME).

Более простое решение может заключаться в том, чтобы поместить инструмент, такой как squid, перед веб-сервером в качестве обратного прокси-сервера, а затем сделать данные обработки сеанса доступными для squid-rewriter.

1 голос
/ 02 ноября 2010

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

Проверка подлинности Apache использует часть проверки подлинности стандарта HTTP, и в результате вы используете браузер для взаимодействия с пользователем. Существуют плагины (например, mod_auth_mysql) для использования базы данных в качестве бэкэнда для этого, но Apache не может запросить у пользователя свои учетные данные другим способом.

Самым быстрым подходом может быть настройка Drupal или Joomla, которая обеспечит вам управление пользователями и группами, а также полное редактирование контента, чтобы вы могли контролировать, кто что может редактировать.

1 голос
/ 28 октября 2010

Вы можете собрать mod_auth_mysql из исходного кода.Посмотрите этот пост.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...