Clause de non-responsabilité: Cet article a été généré par traduction automatique.

Nginx server - Hébergement de sous-dossiers

Prev Next
Professional
Business
Enterprise






Nginx est un serveur web open-source. Pour en savoir plus, consultez la documentation Nginx


Configuration d’un sous-dossier/sous-répertoire

Exemple:

NOTE

Remplacez l’exemple de domaine par votre propre domaine fourni par document360/domaine personnalisé.

  • Exemple de domaine représenté à l’aide de example.document360.io

  • Chemin d’accès au sous-dossier/sous-répertoire (/docs) représenté par example.document360.io/docs

  1. Ajoutez les blocs d’emplacement suivants dans votre fichier de configuration Nginx (/etc/nginx/default).

location /docs {
    proxy_pass https://example.document360.io/docs;
    proxy_set_header Host example.document360.io;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header "requested-by" "proxy";
    proxy_ssl_server_name   on;
}
  1. Redémarrer le serveur web Nginx

  2. Par exemple, si vous utilisez Nginx sous Linux, utilisez la commande
    $ sudo systemctl restart nginx

NOTE

Si vous êtes sur KB Site 2.0 et que vous souhaitez héberger votre base de connaissances en tant que sous-dossier, vous devez définir le chemin du sous-dossier ainsi que le chemin de l’API du site.


Pour configurer sur un chemin autre que '/docs'

  • Vous pouvez configurer votre base de connaissances sur des chemins de sous-répertoires autres que /docs.
    Par exemple, /help, , /supportetc.

  • Lors de la configuration d’autres chemins d’accès, ajoutez les langues associées à chaque espace de travail.

  • Pour y parvenir, il faut ajouter quelques lignes supplémentaires. Redémarrez le serveur une fois terminé.

Exemple:

NOTE

Remplacez le domaine fourni par Document360 et le domaine du sous-répertoire par vos propres domaines. Remplacez également le nom de l’espace de travail, le chemin d’accès au sous-dossier et la langue par vos besoins.

  • Domaine fourni par Document360 représenté par example.document360.io

  • Nom de l’espace de travail représenté par /v1/

  • Chemin du sous-dossier représenté par /help/

  • Langue représentée comme pour l’hébreu /he .

location /help {
    proxy_pass https://example.document360.io/docs;
    proxy_set_header Host example.document360.io;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header "requested-by" "proxy";
    proxy_ssl_server_name   on;

    sub_filter "v1/docs/" "v1/help/";
    sub_filter "docs/he/" "/help/he";
    sub_filter "/docs/" "/help/";
    sub_filter_once off;
}
  1. Redémarrer le serveur web Nginx

  2. Par exemple, si vous utilisez Nginx sous Linux, utilisez la commande
    $ sudo systemctl restart nginx


Pour activer la liste déroulante des espaces de travail

Si vous souhaitez activer la navigation déroulante de l’espace de travail pour votre projet lorsque vous hébergez dans un sous-répertoire et un chemin d’accès personnalisés, ajoutez les codes suivants pour chacun des espaces de travail disponibles dans votre projet.

Exemple:

Supposons que deux espaces de travail soient disponibles dans votre projet, v1 et v2. Dans ce cas, vous devez ajouter deux blocs de code, un pour chaque espace de travail.

NOTE

Remplacez le domaine fourni par Document360 et le domaine du sous-répertoire par vos propres domaines. Remplacez également le nom de l’espace de travail, le chemin d’accès au sous-dossier et la langue par vos besoins.

  • Domaine fourni par Document360 représenté par example.document360.io

  • Nom de l’espace de travail représenté par /v1/,/v2/

  • Chemin du sous-dossier représenté par /help/

  • Langue représentée comme pour l’hébreu /he .

location /v2/help {
    proxy_pass https://example.document360.io/v2/docs;
    proxy_set_header Host example.document360.io;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header "requested-by" "proxy";
    proxy_ssl_server_name   on;

    sub_filter "v2/docs/" "v2/help/";
    sub_filter "docs/he/" "/help/he";
    sub_filter "/docs/" "/help/";
    sub_filter_once off;
}
-----------------------------------------------------
location /v1/help {
    proxy_pass https://example.document360.io/v1/docs;
    proxy_set_header Host example.document360.io;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header "requested-by" "proxy";
    proxy_ssl_server_name   on;

    sub_filter "v1/docs/" "v1/help/";
    sub_filter "docs/he/" "/help/he";
    sub_filter "/docs/" "/help/";
    sub_filter_once off;
}
-----------------------------------------------------
location = /v2/docs {
    return 301 /v2/help;
}
-----------------------------------------------------
location = /v1/docs {
    return 301 /v1/help;
}

NOTE

Si vous souhaitez que vos lecteurs naviguent entre les différents espaces de travail publics de votre projet depuis la liste déroulante (au clic de souris), ajoutez le bloc d’emplacement pour tous les espaces de travail disponibles.

  1. Redémarrer le serveur web Nginx

  2. Par exemple, si vous utilisez Nginx sous Linux, utilisez la commande
    $ sudo systemctl restart nginx


Liens utiles

Voici quelques liens externes qui peuvent vous aider à comprendre en détail les blocs d’emplacement du serveur Nginx :


Génération de sitemap

Exemple:

NOTE

Remplacez l’exemple de domaine par votre propre domaine fourni par document360/domaine personnalisé.

  • Exemple de domaine représenté à l’aide de example.document360.io

  • Le préfixe du sitemap reste le même, à l’exception du code de langue (en, fr, de, etc.)  example.document360.io/sitemap.xml.en

location /sitemap.xml.en {
proxy_pass https://example.document360.io/sitemap.xml.en;
proxy_set_header Host example.document360.io;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header "requested-by" "proxy";
proxy_ssl_server_name   on;

Page d’accueil hébergée sur un sous-dossier

Pour héberger la page d’accueil de votre projet sur un chemin d’accès de sous-répertoire/sous-dossier personnalisé, ajoutez les codes suivants pour chacun des espaces de travail de page d’accueil disponibles dans votre projet.

Exemple:

Supposons que deux espaces de travail soient disponibles dans votre projet, V1 et V2. Dans ce cas, vous devez ajouter deux blocs de code, un pour chaque espace de travail.

NOTE

Remplacez le domaine fourni par Document360 et le domaine du sous-répertoire par vos propres domaines. Remplacez également le nom de l’espace de travail, le chemin d’accès au sous-dossier et la langue par vos besoins.

  • Domaine fourni par Document360 représenté par example.document360.io

  • Nom de l’espace de travail représenté par /v1/,/v2/

location =/v1 {
proxy_pass https://example.document360.io/;
proxy_set_header Host example.document360.io;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header "requested-by" "proxy";
proxy_ssl_server_name   on;
}
location =/v2 {
proxy_pass https://example.document360.io/;
proxy_set_header Host example.document360.io;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header "requested-by" "proxy";
proxy_ssl_server_name   on;
}
location /v1/en {
  return 301 /v1;
}
location /v2/en {
  return 301 /v2;
}

CONSEIL DE PRO

Le signe égal peut être utilisé si l’emplacement doit correspondre à l’URI de demande exacte. Lorsque ce modificateur correspond, la recherche s’arrête ici. Pour plus d’informations, click here.

Exemple: location =/help {

  1. Redémarrer le serveur web Nginx

  2. Par exemple, si vous utilisez Nginx sous Linux, utilisez la commande
    $ sudo systemctl restart nginx

Page d’accueil du site de la base de connaissances

La page d’accueil par défaut d’un site de base de connaissances s’affiche dans le répertoire racine (par exemple, example.document360.io). Si le projet contient un espace de travail et une page d’accueil spécifique à la langue, le slug suivant le répertoire racine est /<workspace_name>/<language_code>. (Par exemple,example.document360.io/v2/he)


Que se passe-t-il ensuite ?

Une fois que vous avez correctement configuré le serveur Web, le site de votre base de connaissances est en ligne dans votre sous-dossier/sous-répertoire personnalisé. Toutefois, l’URL existante de votre projet servira les demandes.

Par exemple example.document360.io et example.com/docs (si /docs est le chemin de votre dossier) pointera vers le site de la base de connaissances.

Cela peut entraîner du contenu dupliqué dans les moteurs de recherche (Google, Bing, etc.). Une redirection du sous-domaine du projet Document360 vers votre domaine personnalisé sera nécessaire pour éviter cela.

NOTE

Pour activer la redirection de example.document360.io à example.com/docs, veuillez nous contacter à l’adresse support@document360.com.


Dépannage

Cette section fournit des conseils étape par étape pour résoudre les problèmes courants que vous pouvez rencontrer lors du processus de configuration de NGINX. Qu’il s’agisse de problèmes d’hébergement de sous-dossiers ou d’échecs de tests de configuration, chaque solution est conçue pour vous aider à identifier et à résoudre rapidement les obstacles potentiels, garantissant ainsi une configuration de serveur fluide et efficace.

Résolution d’une directive d’emplacement non valide dans NGINX

Erreur : nginx : [emerg] la directive « location » n’est pas autorisée ici

Cette erreur se produit lorsqu’une directive location est placée en dehors de son contexte valide, par exemple en dehors du bloc serveur. Dans NGINX, les blocs d’emplacement doivent être définis dans un bloc de serveur.

Étapes à résoudre :

  1. Assurez-vous que le bloc d’emplacement est correctement placé dans le bloc de serveur. Reportez-vous à l’exemple de bloc ci-dessous :

    server {
        listen 80;
        server_name example.com;
        location /docs {
            proxy_pass https://example.document360.io/docs;
            proxy_set_header Host example.document360.io;
        }
    }
  2. Pour éviter ce problème, ne placez pas les directives de localisation dans le contexte global http ou en dehors du server contexte.

  3. Si le problème persiste après avoir suivi ces étapes, veuillez contacter l’équipe d’assistance Document360 pour obtenir de l’aide supplémentaire : Contacter l’assistance Document360

Problème de disponibilité du package Certbot

Erreur: Aucun package Certbot disponible

Ce problème se produit souvent lorsque le référentiel EPEL (requis pour l’installation de Certbot sur les distributions basées sur RHEL) n’est pas activé ou que le gestionnaire de packages ne parvient pas à localiser Certbot sur les distributions basées sur RHEL.

Étapes à résoudre :

  1. Activez le référentiel EPEL à l’aide du code ci-dessous :

    sudo yum install epel-release
  2. Mettez à jour le cache du référentiel et essayez à nouveau d’installer Certbot en utilisant le code ci-dessous :

    sudo yum install certbot
  3. Assurez-vous que votre instance dispose d’un accès Internet pour récupérer les fichiers du référentiel. Si le problème persiste, vérifiez les fichiers de configuration du référentiel dans /etc/yum.repos.d/.

  4. Si le problème persiste après avoir suivi ces étapes, veuillez contacter l’équipe d’assistance Document360 pour obtenir de l’aide supplémentaire : Contacter l’assistance Document360

Problème de test de configuration NGINX

Erreur: Échec du test de configuration NGINX

Ce problème se produit lorsqu’il y a une erreur de syntaxe dans le fichier de configuration NGINX.

Étapes à suivre pour résoudrele problème :

  1. Exécutez la commande de test de configuration :

    sudo nginx -t
  2. Examinez le message d’erreur et le numéro de ligne comme dans l’exemple ci-dessous :

    nginx: [emerg] invalid parameter "proxy_pas" in /etc/nginx/sites-enabled/example:22
    nginx: configuration file /etc/nginx/nginx.conf test failed
  3. Ouvrez le fichier /etc/nginx/sites-enabled/example spécifié et corrigez le problème de configuration. Par exemple:

    # Incorrect
    proxy_pas https://example.com;
    
    # Correct
    proxy_pass https://example.com;
  4. Une fois le problème de configuration résolu, redémarrez NGINX :

    sudo systemctl restart nginx
  5. Si le problème persiste après avoir suivi ces étapes, veuillez contacter l’équipe d’assistance Document360 pour obtenir de l’aide supplémentaire : Contacter l’assistance Document360

Problème de certificat SSL

Erreur: Le certificat SSL ne fonctionne pas

Ce problème peut se produire en raison d’une configuration SSL NGINX incorrecte ou en cas de problème avec le certificat installé. Les détails du certificat, tels que le domaine et la date d’expiration, peuvent ne pas correspondre aux détails de configuration.

Étapes à résoudre :

  1. Vérifiez les fichiers de certificat à l’aide du code ci-dessous :

    openssl x509 -in /etc/letsencrypt/live/yourdomain.com/fullchain.pem -text -noout
  2. Assurez-vous que votre configuration correspond aux détails du certificat, tels que le domaine et la date d’expiration.

  3. Assurez-vous que la configuration SSL de NGINX est correcte. Reportez-vous au code ci-dessous à titre d’exemple :

    server {
        listen 443 ssl;
        server_name yourdomain.com;
        
        ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
    }
  4. Une fois cela fait, redémarrez NGINX en utilisant le code ci-dessous :

    sudo systemctl restart nginx
  5. Si le problème persiste après avoir suivi ces étapes, veuillez contacter l’équipe d’assistance Document360 pour obtenir de l’aide supplémentaire : Contacter l’assistance Document360


FAQ

Pourquoi la page d’accueil de mon site n’est-elle pas disponible ?

Une fois que vous avez conçu la page d’accueil du projet à l’aide du constructeur de site, assurez-vous de l’avoir publiée. Vérifiez que la page d’accueil est en ligne et accessible au public visé.