Skonfiguruj hosting podścieżek za pomocą Caddy

Dowiedz się, jak umieścić centrum pomocy w ścieżce podrzędnej, np. /help, korzystając z odwrotnego serwera proxy Caddy.

3 min czytania

Możesz użyć Caddy do obsługi swojego centrum pomocy Notiondesk ze ścieżki podrzędnej swojej domeny głównej.

Na przykład zamiast używać subdomeny takiej jak help.yourdomain.com, możesz udostępnić swoje centrum pomocy pod adresem:

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

Taka konfiguracja jest przydatna, jeśli Twoja główna witryna internetowa jest hostowana na serwerze, na którym Caddy jest już używany jako serwer WWW lub odwrotny serwer proxy.

Zanim zaczniesz

Przed skonfigurowaniem hostingu podścieżek w Caddy upewnij się, że masz:

  • Dostęp do Twojego serwera
  • Dostęp do Twojego Caddyfile
  • Podścieżka, której chcesz użyć dla swojego centrum pomocy, taka jak:
    • __ZACHOWANE_19__
    • __ZACHOWANO_18__
    • __ZACHOWANO_17__

Przed dodaniem konfiguracji podścieżki Notiondesk należy również upewnić się, czy główna witryna internetowa działa prawidłowo.

Włącz hosting podścieżek w Notiondesk

Najpierw włącz hosting podścieżek z poziomu pulpitu Notiondesk.

  1. Otwórz pulpit nawigacyjny Notiondesk
  1. Przejdź do Settings > General
  1. Przewiń do sekcji Domains
  1. Włącz przełącznik Subpath
  1. Zapisz zmiany
  1. Skopiuj wygenerowaną konfigurację Caddy

Notiondesk generuje konfigurację Caddy z prawidłowymi wartościami dla Twojego centrum pomocy. W następnym kroku będziesz musiał dodać tę konfigurację do pliku Caddy.

Dodaj konfigurację Caddy

Po skopiowaniu konfiguracji z Notiondesk dodaj ją do pliku Caddyfile.

Otwórz blok witryny Caddy, który obsługuje główną domenę Twojej witryny.

Na przykład:

Dodaj wygenerowaną trasę Notiondesk wewnątrz tego bloku witryny.

Konfiguracja powinna obsługiwać:

yourdomain.com {
    # Your main website configuration
}
  • Wybrana przez Ciebie podścieżka centrum pomocy, np. /help
  • Zagnieżdżone strony centrum pomocy, takie jak /help/*
  • Notiondesk trasy wewnętrzne, takie jak /_nd/*

Wszystkie pozostałe ścieżki powinny być obsługiwane przez główną witrynę internetową.

Na przykład, jeśli Twoje centrum pomocy używa /help, tylko /help, /help/* i /_nd/* powinny być przekazywane do Notiondesk.

Przykład odwrotnego proxy Caddy

Poniżej znajduje się przykładowa konfiguracja Caddy dla centrum pomocy obsługiwanego przez /help.

Należy skopiować wygenerowaną konfigurację z własnego pulpitu Notiondesk. Domena centrum pomocy, ścieżka podrzędna i wartości proxy są specyficzne dla danej konfiguracji.

Przeładuj Caddy

Po dodaniu konfiguracji do pliku Caddyfile należy ponownie uruchomić Caddy, aby zastosować zmiany.

Dokładne polecenie zależy od konfiguracji serwera. Jeśli Caddy jest zarządzany za pomocą systemd, zazwyczaj można go przeładować za pomocą:

Przed ponownym załadowaniem możesz również sprawdzić poprawność swojego pliku Caddyfile:

Jeśli walidacja przebiegnie pomyślnie, załaduj ponownie Caddy i przetestuj podścieżkę centrum pomocy.

Sprawdź swoją konfigurację

Po ponownym załadowaniu Caddy otwórz podścieżkę centrum pomocy w przeglądarce.

Następnie przetestuj kilka stron, aby upewnić się, że wszystko działa poprawnie:

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

  • Otwórz stronę główną centrum pomocy
  • Otwórz znaną stronę artykułu
  • Otwórz główną stronę swojej witryny

Powiązane artykuły

Czy ta strona była pomocna?