У меня есть экземпляр apache, который использует Kerberos для единого входа с внутренним приложением, которое у нас запущено. Однако производительность очень-очень плохая.
Из дампа tcp я полагаю, что когда пользователь нажимает некоторые из наших форм додзё в приложении, apache выполняет вызовы нашего KDC, чтобы убедиться, что у пользователя есть разрешения на эти файлы.
Поскольку библиотека dojo довольно большая, она требует много времени для запуска и серьезно влияет на производительность загружаемых форм на основе dojo.
Мы используем mod_auth_kerb
и в настоящее время наш файл httpd.conf выглядит так.
<Directory "/opt/myapp/public">
AllowOverride All
Order allow,deny
Allow from all
AuthType Kerberos
AuthName KerberosLogin
KrbServiceName HTTP/taz.uk.mydomain.com@MYDOMAIN.COM
KrbMethodNegotiate On
KrbMethodK5Passwd On
KrbAuthRealms MYDOMAIN.COM
Krb5KeyTab /etc/krb5.keytab
require valid-user
</Directory>
Есть ли команда, которую я могу поместить в файл httpd.conf или файл .htaccess, который я помещаю в каталог javascript, содержащий библиотеку dojo, чтобы сообщить apache не аутентифицировать доступ к каталогу?
Я считаю, что это улучшит производительность сайта в 100 раз. (Да, это действительно так плохо)
Спасибо
Это удар в темноте, но проверяли ли вы, нормально ли работает DNS на веб-сервере? Если он не может решить все проблемы с первой попытки, он истечет по тайм-ауту и перейдет на второй сервер, указанный в resolv.conf, который может объяснить успех после того, как первый раз будет длиться вечно.
нужно ли защищать вашу библиотеку додзё через Kerberos? в противном случае вы можете использовать другой псевдоним для обслуживания этих файлов и не быть защищенным Kerberos. Это, безусловно, относится к любым другим статическим файлам.
Я сомневаюсь, что это как-то связано с аутентификацией Krb. После аутентификации mod_auth_kerb ведет себя как базовая аутентификация. Apache создаст для вас сеанс, и вам не придется повторно аутентифицироваться каждый раз, когда вы загружаете файл.
Я предлагаю вам установить firefox с надстройкой firebug и активировать панель «Net». Это даст вам бесценное представление о том, что делает ваш браузер.
Если проблема действительно вызвана DNS, а не самой аутентификацией Kerberos, почему бы не обойти ее, добавив этот адрес в файл hosts?