У меня есть установка сервера Seafile на серверной машине. Я также купил доменное имя для сервера и выпустил для него сертификат. Seafile обслуживается с помощью Apache 2.
Основной сайт Seafile работает нормально, доменное имя остается в адресной строке, когда я его просматриваю, и сертификат действует. Однако, когда я пытаюсь получить доступ к файловому серверу Seafile, например. при попытке загрузить файл из браузера имя домена больше не отображается, и вместо этого там отображается IP-адрес моего сервера, при этом получая предупреждение о недействительности сертификата, поскольку имя в URL-адресе (IP-адрес сервера) не соответствует доменному имени, для которого предназначен сертификат.
Точно так же, поскольку клиент Seafile также обращается к файловому серверу Seafile, он также выдает предупреждение о недействительном сертификате.
Я подозреваю, что это связано с ошибкой в моей конфигурации Apache. Ниже приведен мой файл конфигурации для тех, кто хочет разобраться в этом и, возможно, обнаружить, что я сделал неправильно.
Домен изменен на «example.com».
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
Alias /media /home/debian/seafile/seafile-server-latest/seahub/media
<Location /media>
Require all granted
</Location>
# seafile fileserver
ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082
RewriteEngine On
RewriteRule ^/seafhttp - [QSA,L]
# seahub web interface
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
ProxyPass / http://127.0.0.1:8000/
ProxyPassReverse / http://127.0.0.1:8000/
</VirtualHost>
</IfModule>