Apache на Ubuntu: модуль dav_module уже загружен - PullRequest
0 голосов
/ 08 мая 2018

Я только что переместил свой репозиторий subversion со старого сервера FreeBSD на новый сервер Ubuntu 16 с Apache 2.4.Я настраиваю новый сайт в "sites-available" и перезапускаю Apache, который выдал мне эту ошибку:

[so: warn] [pid 15619] AH01574: модуль dav_module уже загружен, пропуская

Кажется, что все загруженные модули, связанные с Дав, разные.Я не вижу, чтобы dav_module загружался дважды:

# cd /etc/apache2
# grep -rI "LoadModule" * | grep dav
mods-available/dav_fs.load:LoadModule dav_fs_module /usr/lib/apache2/modules/mod_dav_fs.so
mods-available/dav_svn.load:LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
mods-available/dav.load:LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
mods-available/dav_lock.load:LoadModule dav_lock_module /usr/lib/apache2/modules/mod_dav_lock.so

Помимо subversion формы и apache, я установил следующие пакеты:

# apt-get install subversion-tools libapache2-svn

Я заметил, что установка позаботилась о загрузке модулей (a2enmod), поэтому я ничего не делал в этом отношении.

Это мой конфиг виртуального хоста:

<VirtualHost *:443>
  DocumentRoot /var/www/subversion
  ServerName svn.domain.com
  ErrorLog "|/usr/bin/rotatelogs -l /var/log/subversion/svn-error.%Y.%m.%d 86400"
  CustomLog /var/log/subversion/svn-access_log "%t %u %{SVN-ACTION}e" env=SVN-ACTION

  <Location "/">
     DAV svn 
     SVNPath /var/www/subversion

     #Authenticated users only
     Require valid-user
     # authenticating them valid ones
     AuthType Basic
     AuthName "Subversion Repository"
     AuthUserFile /var/www/passwd/.htpasswd-svn
       order deny,allow
       deny from all 
       satisfy any 
  </Location>

  SSLEngine on
  SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
  SSLCACertificateFile /etc/ssl/local_certs/2018-domain.com/intermediate.crt
  SSLCertificateFile /etc/ssl/local_certs/2018-domain.com/public.crt
  SSLCertificateKeyFile /etc/ssl/local_certs/2018-domain.com/private.key

  <FilesMatch "\.(cgi|shtml|phtml|php)$">
    SSLOptions +StdEnvVars
  </FilesMatch>

  BrowserMatch ".*MSIE.*" \
    nokeepalive ssl-unclean-shutdown \
    downgrade-1.0 force-response-1.0

  <Directory /var/www/subversion>
    Options -Indexes
  </Directory>
</VirtualHost>

Все работает нормально, несмотря на это предупреждение, но, тем не менее, было бы неплохоизбавиться от этого.

1 Ответ

0 голосов
/ 03 июня 2018

Конфигурация вашего жизненно важного хоста в порядке и не имеет ничего общего с предупреждением. Проблема вызвана двумя включенными конфигурационными файлами, оба загружают mod_dav.so:

  • mods-enabled/dav_svn.load: загружает модуль DAV как зависимость
  • mods-enabled/dav.load: (очевидно)

dav_svn.load осторожен и включает в себя dav.load, только если модуль еще не загружен, но dav.load такой проверки не имеет. Это прекрасно работает, если dav.load включен до dav_svn.load, но, очевидно, этого не происходит в вашем случае (кстати, здесь тоже самое).

Мне удалось избавиться от предупреждения, изменив содержимое dav.load с

LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so

до

<IfModule !mod_dav.c>
    LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
</IfModule>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...