Как настроить поддомен для следующего облака дома, шаг за шагом?
Недавно я настроил Raspberry Pi Nextcloud 15 и очень хотел бы поместить его в поддомен, например cloud.mydomain.me
но не могу понять, как это сделать правильно.
Мой IP-адрес является общедоступным (поэтому проблема с DDNS отсутствует), домен хранится в namecheap.com
и Apache2 используется в качестве веб-сервера, я хотел бы иметь возможность загружать нормальный index.html
(в /var/www/html/
) в mydomain.me
В то же время доступ к экземпляру следующего облака в cloud.mydomain.me
вместо mydomain.me/nextcloud
(по умолчанию). Я также использую certbot для генерации сертификата, из того, что я понял, мне нужно генерировать сертификат для обоих mydomain.me
а также cloud.mydomain.me
но через sudo certbot --apache
только найденная настройка cloud.mydomain.me
как вариант.
Что я должен установить в Namecheap в качестве записей хоста? Что я должен настроить в конфиге Apache (000-default.conf
)? Что я должен настроить в config.php
(в /var/www/html/nextcloud/config/
)? Что я должен настроить, чтобы certbot мог видеть и генерировать сертификаты как для mydomain.me
а также cloud.mydomain.me
?
Я искал в Интернете руководство такого типа, но они просто пропускают детали настройки тех частей, которые я не могу понять, потому что я новичок, но все еще хочу выполнить эту настройку:)
Спросите меня больше деталей, если это необходимо.
PS: порты 80
а также 443
на локальный адрес Raspberry Pi уже открыты снаружи.
Выход моего апача 000-default.conf
:
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:443>
ServerName cloud.mydomain.me
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains; preload"
</IfModule>
SSLCertificateFile /etc/letsencrypt/live/cloud.mydomain.me/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/cloud.mydomain.me/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
Выход моего config.php
файл в /var/www/html/nextcloud/config/
:
<?php
$CONFIG = array (
'instanceid' => 'REDACTED',
'passwordsalt' => 'REDACTED',
'secret' => 'REDACTED',
'trusted_domains' =>
array (
0 => '192.168.1.226',#LAN IP Address
1 => 'REDACTED',#public IP Address
2 => 'cloud.mydomain.me'
),
'datadirectory' => '/var/nextcloud/data',
'dbtype' => 'sqlite3',
'version' => '15.0.6.1',
'overwrite.cli.url' => 'https://192.168.1.226/nextcloud',
'htaccess.RewriteBase' => '/',
'dbname' => 'cloud',
'installed' => true,
'updater.secret' => 'REDACTED',
'maintenance' => false,
'theme' => '',
'loglevel' => 2,
);
DNS-записи: namecheap DNS-записи