Je suis en cours d'exécution d'une application Koa sur le port 5000, et je voudrais Ngnix de servir l'application dans un sous-répertoire - par exemple: http://example.com/myNodeApp
Noeud JS - Nginx - proxy_pass à un sous-répertoire - Koa
Voici ce que Je suis actuellement en ai /etc/nginx/sites-enabled/default
location ^~ /myNodeApp/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:5000/;
}
Ce genre de travaux ... en dehors du fait que toute redirection par exemple this.redirect('/')
dans mon application Koa va à la racine web nginx /
En outre, il ne rend rien du répertoire public
de mes applications Koa, par exemple. feuilles de style, javascript et images.
Qu'est-ce que je fais mal? Merci.
Pourquoi utilisez-vous match regexp de l'emplacement? Passer à la chaîne de caractères simple 'location/myNodeApp/{' –
Merci @Terra. J'ai lu une question similaire SO où ils l'ont fait et j'ai pensé que je l'essayerais aussi. Passer à 'location/myNodeApp/{...}' (sans l'expression régulière comme vous l'avez suggéré) donne le même résultat. – doublesidedstickytape
Pouvez-vous vérifier et afficher l'en-tête 'Location' complet? Avec partie de domaine.Parce que la réécriture d'en-tête 'Location' ne fonctionne que si votre application de noeud redirige vers http: // localhost: 5000 /. Mais si l'application de noeud redirige vers http: // localhost/- réécriture personnalisée requise. Donc, besoin de savoir comment ressemble l'entête de localisation. –