Nextcloud - это облачный сервер данных с открытым исходным кодом. На ОС с snapd
вы можете установить все это сразу: sudo snap install nextcloud
Это кажется волшебным, но я застрял там. На моем сервере уже размещались различные домены с использованием Apache, и я даже не знаю, где искать целевую страницу nextcloud. Все инструкции / руководства, которые я могу найти, не объясняют, где находится сайт или как оснастка будет взаимодействовать с существующим Apache. Теперь я подозреваю, что не могу использовать оснастку, если у меня уже запущен Apache? Но из того, что я читал, это было неясно.
У меня есть отдельный IP-домен для сервера nextcloud, поэтому мне просто нужна оснастка, чтобы обрабатывать запросы для одного доменного имени.
Могу ли я использовать оснастку для установки nextcloud на сервере, на котором уже запущен Apache?
Обновить:
Я пробовал следующее:
sudo snap install nextcloud
sudo snap set nextcloud ports.http=81
sudo snap restart nextcloud.apache
В этот момент я вижу, что страница nextcloud существует с
links http://localhost:81
Однако я не могу получить к нему доступ с другого компьютера, чтобы продолжить настройку. Как мне продолжить? (На этом этапе я надеюсь, что у меня будет основной / существующий сервер Apache2 сопоставить порт 81 и 443 с виртуальным хостом выбранного мной доменного имени).
Обновление 2:
Выше одна проблема заключалась в том, что порт 81 был заблокирован для внешнего мира.
Допустим, у меня есть неиспользуемые порты 9992
и 9993
виден в Интернете с моего существующего сервера Ubuntu 18.04 LTS с IP-адресом 111.222.333.444: и IP-именем example.net
; и что на этом сервере размещены различные сайты, уже использующие Apache 2.4.29-1ubuntu4.13
; и что я установил новое IP-имя clouddomain.example.org
который указывает на те же IP-адреса, что и example.net
.
Я обнаружил, что использование современного браузера, даже в режиме инкогнито, и даже использование ctrl-shift-r для перезагрузки страниц не отражают мои последние изменения по мере их внесения (т. Е. Кэширование данных). Поэтому я использую links
для проверки URL-адресов в описанной ниже процедуре.
я бегу
sudo snap install nextcloud
sudo nextcloud.manual-install myadmin mypassword
sudo snap set nextcloud ports.http=9992
С этой точки зрения,
links http://example.net:9992
отображает целевую страницу nextcloud.
Затем я создал файл .conf Apache с содержимым
<VirtualHost 111.222.333.444:80>
ServerName clouddomain.example.org
ErrorLog /var/log/apache2/clouddomain.example.org_error_log
CustomLog /var/log/apache2/clouddomain.example.org_access_log combined
ProxyPass / http://localhost:9992/
ProxyPassReverse / http://localhost:9992/
</VirtualHost>
и я связываю его с сайтов, доступных для сайтов с поддержкой, и перезапускаю сервер Apache ОС с одним из:
sudo service apache2 reload
sudo service apache2 reload
Сейчас
links http://clouddomain.example.org
переводит меня на следующую страницу облака. Вызов
sudo nextcloud.occ config:system:set overwritehost --value="clouddomain.example.org"
на данный момент не имеет значения.
Затем мне нужно заставить сайт работать с SSL (https). Я не могу. Если я позвоню
sudo nextcloud.enable-https lets-encrypt
и введите соответствующую информацию, мне сообщают, что сертификат выдан и Apache перезапущен. Однако это ничего не дает. Страница без SSL больше не доступна; это дает мне ошибку 503. Страница SSL также недоступна:
links https://clouddomain.example.org:9993
дает отказ в соединении. Для этих попыток на /var/snap/nextcloud/current/apache/logs/error_log
Неудивительно, что создание второй прокси-конфигурации для сервера Apache2 на example.net не помогает, но вот что я использую:
<VirtualHost 111.222.333.444:80>
ServerName clouddomain.example.org
ErrorLog /var/log/apache2/clouddomain.example.org_error_log
CustomLog /var/log/apache2/clouddomain.example.org_access_log combined
ProxyPass / http://localhost:9992/
ProxyPassReverse / http://localhost:9992/
</VirtualHost>
Я заметил еще одну проблему, которая подсказывает мне, что одна из моих проблем может быть идиосинкразической, хотя я не думаю, что это единственная проблема: когда я активирую прокси SSL, другие мои сайты, а не на clouddomain.example.org но размещены на сервере example.net, не могут подключиться по https. Это верно даже без установленного nextcloud.