nextcloudでWebページを提供

nextcloudでWebページを提供

mydomain.comに新しく設定されたVPNがあります。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.5 LTS
Release:    20.04
Codename:   focal
$ 

管理者が私のためにnextcloudをインストールしました。私はnextcloudクライアントにwork.mydomain.comを指定しましたが、うまくいきました。私もWebサーバーを構築したいwww.mydomain.com。現在のWebブラウザで次を指すときwww.mydomain.com、「信頼できないドメインを介してアクセスしました。管理者に連絡してください」というnextcloudスタイルのページが表示されます。これは、Web サーバーが実行中であることを示します。もちろん:

$ sudo netstat -tnlp | grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      844835/httpd        
$ 

そしてapache2がインストールされていません。インストールすると、次の結果が表示されます。

$ service apache2 status
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor prese>
     Active: failed (Result: exit-code) since Tue 2023-01-31 17:08:54 CET; 1 we>
       Docs: https://httpd.apache.org/docs/2.4/
:/$

だからnextcloudのWebサーバが処理しているようです。www.mydomain.com。 nextcloudのconfig.phpにはドメインへの参照が2つしかありません。

  ...
  'trusted_domains' => 
  array (
    0 => 'work.mydomain.com',
  ),
  'datadirectory' => '/var/snap/nextcloud/common/nextcloud/data',
  'dbtype' => 'mysql',
  'version' => '25.0.2.3',
  'overwrite.cli.url' => 'https://work.mydomain.com',
  ...

だから電話する方法がわからないwww.mydomain.comサービス中です。私のページをどのように提供しますか?www.mydomain.com

答え1

Webサーバーを実行しようとしており、Nextcloudも同じサーバー上でポート80(またはセキュア/ TLS接続の場合443)で実行されています。

デフォルトでは、ブラウザにIPを入力するとポート80(または443)にリダイレクトされます。ここではwww.mydomain.com両方ともwork.mydomain.comサーバーのポート80(または443)にリダイレクトされますが、サブworkドメインのみがNextcloudにアクセスする権限を持っています。

Apacheが起動しない理由は、デフォルトでNextcloudですでに使用されているポート80と443への要求を処理するように設定されているためです。

NextcloudとWebサイトを提供するには、リバースプロキシ設定を使用する必要があります。 Apache自体は、リバースプロキシとWebサーバーとして2倍にすることができます。デフォルトでは、ポート80と443へのApache傍受要求があり、URL形式に従ってwork.mydomain.comNextcloudにリダイレクトされ、そうであればwww.mydomain.comWebサイトにリダイレクトされます。

これは VirtualHost を使用して部分的に行われます。例がありますここ

関連情報