Caddyでサブパスホスティングを設定する

Caddyリバースプロキシを使用して、/helpのようなサブパスにヘルプセンターをホストする方法を学びましょう。

1 分で読めます

Caddy を使用すると、メイン ドメインのサブパスから Notiondesk ヘルプ センターを提供できます。

例えば、help.yourdomain.com のようなサブドメインを使用する代わりに、ヘルプセンターを次のURLからアクセスできるようにすることができます。

  • yourdomain.com/help
  • yourdomain.com/docs
  • yourdomain.com/support

この設定は、メインのウェブサイトが、 Caddyが既にウェブサーバーまたはリバースプロキシとして使用されているサーバー上でホストされている場合に役立ちます。

始める前に

Caddyでサブパスホスティングを設定する前に、以下のものを用意してください。

  • サーバーへのアクセス
  • Caddyfileへのアクセス
  • ヘルプセンターに使用したいサブパスの例:
    • /help
    • /docs
    • /support

Notiondesk サブパス設定を追加する前に、メインのウェブサイトが正しく動作していることを確認してください。

Notiondesk でサブパス ホスティングを有効にする

まず、Notiondesk ダッシュボードからサブパスホスティングを有効にしてください。

  1. Notiondesk ダッシュボードを開く
  1. Settings > Generalへ移動
  1. Domains」セクションまでスクロールしてください。
  1. Subpath スイッチを有効にする
  1. 変更を保存する
  1. 生成されたCaddy設定をコピーします。

Notiondesk は、ヘルプセンターに適した値を含む Caddy 設定を生成します。次のステップで、この設定を Caddyfile に追加する必要があります。

キャディ構成を追加する

Notiondesk から設定をコピーした後、それを Caddyfile に追加してください。

メインのウェブサイトドメインを管理するCaddyサイトブロックを開きます。

例えば:

生成された Notiondesk ルートをこのサイトブロック内に追加してください。

設定では以下を処理する必要があります。

yourdomain.com {
    # Your main website configuration
}
  • 選択したヘルプセンターのサブパス(例:/help
  • /help/* のようなネストされたヘルプセンターページ
  • Notiondesk 内部ルート、例えば /_nd/*

その他の経路については、引き続きメインウェブサイトで処理してください。

例えば、ヘルプセンターで/helpを使用している場合、/help/help/*、および/_nd/*のみがNotiondeskにプロキシされる必要があります。

Caddyのリバースプロキシの例

以下は、/help から提供されるヘルプセンターの Caddy 設定例です。

生成された設定は、ご自身のNotiondeskダッシュボードからコピーしてください。ヘルプセンターのドメイン、サブパス、プロキシの値は、お客様の設定によって異なります。

リロードキャディ

Caddyfileに設定を追加したら、Caddyを再起動して変更を適用してください。

正確なコマンドはサーバーの設定によって異なります。Caddyがsystemdで管理されている場合は、通常は以下のコマンドで再読み込みできます。

再読み込みする前に、Caddyfileを検証することもできます。

検証に合格したら、Caddyを再起動してヘルプセンターのサブパスをテストしてください。

設定を確認してください

Caddyを再起動した後、ブラウザでヘルプセンターのサブパスを開いてください。

次に、いくつかのページをテストして、すべてが正しく動作することを確認してください。

route {
    @subpath path /help /help/*
    handle @subpath {
        reverse_proxy your-help-center.notiondesk.help:443 {
            header_up Host {http.request.host}
            header_up X-Forwarded-Host {http.request.host}
            header_up X-Forwarded-Proto https
            header_up X-Site-Path-Prefix /help
            transport http {
                tls
                tls_server_name your-help-center.notiondesk.help
            }
        }
    }

    handle /_nd/* {
        reverse_proxy your-help-center.notiondesk.help:443 {
            header_up Host {http.request.host}
            header_up X-Forwarded-Host {http.request.host}
            header_up X-Forwarded-Proto https
            transport http {
                tls
                tls_server_name your-help-center.notiondesk.help
            }
        }
    }

    # Let your main app handle every other path.
}

sudo systemctl reload caddy
caddy validate

  • ヘルプセンターのホームページを開く
  • 既知の記事ページを開く
  • メインウェブサイトのホームページを開く

関連する記事

このページは役に立ちましたか?