Stel subpadhosting in met Cloudflare.

Leer hoe u uw helpcentrum op een subpad kunt hosten met behulp van een Cloudflare Worker.

3 min lezen

Je kunt je Notiondesk helpcentrum hosten op een subpad van je hoofddomein met behulp van Cloudflare Workers .

In plaats van bijvoorbeeld een subdomein zoals help.yourdomain.com te gebruiken, kunt u uw helpcentrum ook beschikbaar stellen via:

Deze configuratie is handig wanneer uw hoofdwebsite al gebruikmaakt van Cloudflare en u wilt dat uw documentatie of ondersteunende content onder hetzelfde domein blijft.

Voordat je begint

Voordat je subpad-hosting met Cloudflare instelt, zorg ervoor dat je het volgende hebt:

yourdomain.com/help

yourdomain.com/docs

yourdomain.com/support


  • Een bestaand Notiondesk helpcentrum
  • Een domein beheerd via Cloudflare
  • Een subpad dat u wilt gebruiken voor uw helpcentrum, bijvoorbeeld:
    • __GERESERVEERD_13__
    • __GERESERVEERD_12__
    • __GERESERVEERD_11__
  • Subpadhosting ingeschakeld in Notiondesk

icon
Let op: deze configuratie wordt aanbevolen als uw hoofddomein al gebruikmaakt van Cloudflare. Als uw website bij een andere provider wordt gehost, kunt u beter een van de andere handleidingen voor subhosting raadplegen .

Schakel subpadhosting in in Notiondesk

Schakel eerst subpadhosting in via uw Notiondesk dashboard.

  1. Open je Notiondesk dashboard.
  1. Ga naar Instellingen > Algemeen
  1. Scroll omlaag naar het gedeelte 'Domeinen' .
  1. Schakel de Subpath- schakelaar in.
  1. Selecteer Cloudflare als uw installatieprovider.
  1. Kopieer de Cloudflare Worker-code die is gegenereerd door Notiondesk

Notiondesk genereert automatisch de Cloudflare Worker-code met de juiste waarden voor uw helpcentrum.

Je moet de code rechtstreeks van je eigen dashboard kopiëren, omdat deze waarden bevat die specifiek zijn voor jouw configuratie, zoals:

  • Uw Notiondesk oorspronkelijke host
  • Uw eigen domein
  • Uw geselecteerde subpad

Een Cloudflare Worker aanmaken

Maak vervolgens een Cloudflare Worker aan die uw subpad voor het helpcentrum doorstuurt naar Notiondesk.

  1. Open je Cloudflare-dashboard
  1. Ga naar Medewerkers & Pagina's
  1. Klik op 'Aanvraag maken'.
  1. Selecteer werknemer
  1. Een nieuwe medewerker aanmaken
  1. Open de Worker-editor
  1. Vervang de standaardcode door de code die is gegenereerd door Notiondesk.
  1. Klik op Opslaan en implementeren

Nadat je de Worker hebt geïmplementeerd, maakt Cloudflare deze beschikbaar, maar hij zal nog niet actief zijn op de URL van je helpcentrum. Je moet een route configureren zodat Cloudflare weet wanneer de Worker moet worden geactiveerd.

Configureer de Cloudflare-route

Nadat je de Worker hebt geïmplementeerd, moet je Cloudflare laten weten wanneer deze Worker moet draaien. De Worker mag alleen draaien op het door jou geselecteerde subpad van het helpcentrum.

Als uw helpcentrum bijvoorbeeld beschikbaar moet zijn op yourdomain.com/help, voeg dan een Worker-route toe zoals deze: yourdomain.com/help*

Hierdoor voert Cloudflare de Worker uit voor:

  • yourdomain.com/help
  • yourdomain.com/help/collections/getting-started
  • yourdomain.com/help/articles/example-article
  • yourdomain.com/help/contact

Je moet er ook voor zorgen dat de interne route Notiondesk wordt afgehandeld: yourdomain.com/_nd/*

Voeg de route toe in Cloudflare.

  1. Open je Worker in het Cloudflare-dashboard.
  1. Ga naar Instellingen
  1. Open domeinen en routes
  1. Klik op Route toevoegen
  1. Selecteer uw zone
  1. Voeg uw helpcentrumroute toe, bijvoorbeeld : yourdomain.com/help*
  1. Voeg de interne route Notiondesk toe, bijvoorbeeld: yourdomain.com/_nd/*
  1. Sla je wijzigingen op

icon
Gebruik het subpad dat je hebt geselecteerd in Notiondesk. Als je hebt gekozen voor , zou je route moeten zijn ./docsyourdomain.com/docs*

Als u /support hebt gekozen, zou uw route yourdomain.com/support* moeten zijn.

De officiële documentatie van Cloudflare legt ook uit hoe Worker-routes en aangepaste domeinen voor Workers werken, mocht je meer details nodig hebben.

Cloudflare Worker-voorbeeld

const ORIGIN_HOST = "your-help-center.notiondesk.help";
const CUSTOM_HOST = "yourdomain.com";
const SUBPATH = "/help";

function isSubpathRequest(pathname) {
  return pathname === SUBPATH || pathname.startsWith(SUBPATH + "/");
}

export default {
  async fetch(request) {
    const url = new URL(request.url);
    const shouldProxy =
      isSubpathRequest(url.pathname) || url.pathname.startsWith("/_nd/");

    if (!shouldProxy) {
      return fetch(request);
    }

    url.hostname = ORIGIN_HOST;

    const proxyRequest = new Request(url, request);
    proxyRequest.headers.set("Host", CUSTOM_HOST);
    proxyRequest.headers.set("X-Forwarded-Host", CUSTOM_HOST);
    proxyRequest.headers.set("X-Forwarded-Proto", "https");

    if (isSubpathRequest(url.pathname)) {
      proxyRequest.headers.set("X-Site-Path-Prefix", SUBPATH);
    }

    return fetch(proxyRequest);
  },
};
icon
Dit is slechts een voorbeeld. Gebruik de Worker-code die is gegenereerd in uw Notiondesk dashboard voor uw eigen helpcentrum.

Controleer uw configuratie.

Nadat de Worker is geïmplementeerd en de routes zijn geconfigureerd, opent u het helpcentrum via het door u geselecteerde subpad. Controleer of de hoofdpagina van het helpcentrum correct wordt geladen.

Wat te controleren

Zorg ervoor dat:

  • Het helpcentrum wordt geladen onder uw hoofddomein.
  • Artikelpagina's worden correct geopend.
  • Afbeeldingen, scripts en stijlen worden correct geladen.
  • De URL in de browser blijft op uw aangepaste domein.

icon
Het kan een paar minuten duren voordat wijzigingen in Cloudflare zijn doorgevoerd. Als het helpcentrum niet direct laadt, wacht dan even en vernieuw de pagina.

Gerelateerde artikelen

Was deze pagina nuttig?