Аут успешно завершен Нет доступной линии

Обновление до сервера Ubuntu 14.04 (и Apache2 2.4) Я не могу использовать MySQL в качестве htaccess;

До обновления я использовал MySQL в качестве htaccess на виртуальном хосте - работал хорошо:

<Directory /var/www/html/tilmelding/login>
           AuthBasicAuthoritative Off
            AuthUserFile /dev/null

            # begin auth_mysql configuration
            AuthMySQL On
            AuthMySQL_Host localhost
            AuthMySQL_User **********
            AuthMySQL_Password *********
            AuthMySQL_DB **********
            AuthMySQL_Password_Table user_info
            AuthMySQL_Username_Field user_name
            AuthMySQL_Password_Field user_passwd
            AuthMySQL_Empty_Passwords Off
            AuthMySQL_Encryption_Types PHP_MD5
            AuthMySQL_Authoritative 
            AuthType Basic
            AuthName "auth_mysql test"
            Require valid-user

После обновления это не сработало.

В лог-файле я получил:


[:debug] [pid 31333] mod_auth_mysql.c(1578): Constructing password collection query with passfield=[user_passwd], table=[user_info], userfield=[helgoland], where_clause=[]
[:debug] [pid 31333] mod_auth_mysql.c(1410): sec->dbh in /var/www/html/tilmelding/login/ is 
[:debug] [pid 31333] mod_auth_mysql.c(1417): Ordinary query
[:debug] [pid 31333] mod_auth_mysql.c(1434): Running query: [SELECT user_passwd FROM user_info WHERE user_name='helgoland']
[:debug] [pid 31333] mod_auth_mysql.c(1522): Checking with PHP_MD5
[:debug] [pid 31333] mod_auth_mysql.c(1524): Auth succeeded
[:error] [pid 31333] No requires line available

Я могу выполнить запрос из CLI и получить MD5 обратно.

Что я пропустил?

4
задан 28 May 2014 в 22:43

3 ответа

Просто добавьте AuthMySQL_Authoritative Off к .htaccess

0
ответ дан 28 May 2014 в 22:43

Я наткнулся на ту же самую проблему, таким образом, я столкнулся с этим сообщением.

Для любого, кто заканчивает здесь, это - мое заключение.

После дальнейшего поиска сети, большинство людей, кажется, приходит к заключению, что lib-apache2-mod-auth-mysql является несовместимым с Apache 2.4 (стандарт в Ubuntu 14.04), Кроме того, поддерживают для этого модуля, остановился.

Некоторые предлагают перекомпилировать (версия 3.0.0) с некоторыми патчами, решает проблему. Но это кажется вполне "hacky".

официальный "Apache" способ использовать стандартную аутентификацию / MySQL использования авторизации состоит в том, чтобы использовать dbd модуль (mod_authn_dbd). Как сделать, это объяснено вполне ясно в официальной документации Apache. http://httpd.apache.org/docs/current/mod/mod_authn_dbd.html .
Эта документация лицензируется в соответствии с лицензией Apache. http://www.apache.org/licenses/LICENSE-2.0

Так знать, что, хотя Вы могли установить lib-apache2-mod-auth-mysql со способным - входят в Ubuntu 14.04 LTS, этого, вероятно, лучше всего избегают, так как это по сути повреждается для этой версии.

0
ответ дан 28 May 2014 в 22:43

AuthMySQL_Authoritative Прочь также работал на меня (как строка в конфигурации Virtualhost). Я полагаю, что это позволяет mod_auth_mysql передавать учетные данные на mod_auth для аутентификации.

0
ответ дан 28 May 2014 в 22:43

Другие вопросы по тегам:

Похожие вопросы: