- ホーム
- Docs
- インストールと設定
- コミュニティ
- Docker バージョン
- NextcloudとONLYOFFICEエディターのリバースプロキシ設定
NextcloudとONLYOFFICEエディターのリバースプロキシ設定
はじめに
異なるマシンに複数のサーバーソリューションをインストールすると、プロキシサーバーの設定に関する問題が発生することがあります。
この特定のケースでは、以下の3台の異なるマシンがあります。
- nginx – http://nginx,
- Nextcloud – http://nextcloud,
- ONLYOFFICEエディター – http://onlyoffice.
すべてDockerを使用してポート80でインストールされています。
正しい接続を確立するために、以下のアクションを実行する必要があります:
- nginxのカスタマイズにより、http://nginxへのリクエストがNextcloudを開くようにする。
- Nextcloudのカスタマイズにより、http://nginx/editors/で利用可能なドキュメントエディターと連携する。
この記事を読んで、nginx、Nextcloud、およびONLYOFFICE Docsのプロキシサーバーを正しく設定する方法を確認してください。
ステップ1. Nextcloudのプロキシ設定
nginxを介してNextcloudをプロキシするには、nginxの設定を変更し、Nextcloudの信頼できるドメインリストにそのアドレスを追加します。
必要な設定は、nginxコンテナの/etc/nginx/conf.d/default.confにあります。このファイルを次のようにします:
server {
listen 80;
location / {
proxy_pass_header Server;
proxy_pass http://nextcloud/;
}
}
proxy_passパスの最後のスラッシュに注意してください。
nginxの設定をリフレッシュするには、以下を実行します:
service nginx reload
次にhttp://nginxドメインを追加します。Nextcloudコンテナの/var/www/html/config/config.phpで設定を開きます。そこにtrusted_domainセクションを見つけるか追加し、nginxアドレスを追加します。すべての変更が有効になると、この設定部分は次のようになります:
‘trusted_domain’ => (0 => ‘nextcloud’, 1 => ‘nginx’)
ステップ2. ドキュメントエディターのプロキシ設定
再度、nginxサーバーのdefault.confを開き、もう一つのロケーションを追加します。
location /editors/ {
proxy_pass http://onlyoffice/;
}
しかし、これだけではエディターを実行するのに十分ではありません。デフォルトでは、ドキュメントエディターはリクエストに含まれるアドレスを使用してリソースへのリンクを生成します。エディターがプロキシサーバーに接続されていないため、仮想パスに関係なくリンクを生成します(例:http://nginx/apps/files/)。これは正しくありません。/apps/files/はhttp://onlyoffice/サーバーにあります。
これを修正するには、リクエストヘッダーでリンク生成のパスを‘X-Forwarded-Host’ヘッダーで指定する必要があります。
設定ファイルの先頭に次のコードを追加します:
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $http_host/editors;
server {
listen 80;
location / {
proxy_pass_header Server;
proxy_pass http://nextcloud/;
}
location /editors/ {
proxy_pass http://onlyoffice/;
}
}
ステップ3. ONLYOFFICE-Nextcloudコネクタのインストール
ONLYOFFICEとNextcloudのインスタンスを相互にリンクするために、私たちの準備されたコネクタを使用します。コネクタはGitHubで利用可能ですが、最も簡単な方法はNextcloudアプリストアからインストールすることです。
インストール後、設定メニューに新しいオプションが表示されます。そこでは、ONLYOFFICEエディターのアドレスを指定する必要があります – http://nginx/editors/。