Maison  >  Article  >  interface Web  >  Comment déployer nginx pour le service nodejs

Comment déployer nginx pour le service nodejs

PHPz
PHPzoriginal
2023-04-05 13:48:251508parcourir

Dans le développement Web moderne, avec le développement continu de la technologie front-end, Node.js est souvent utilisé pour créer des applications Web. Pour ceux qui développent des applications Web à l'aide de Node.js, « Nginx » est un mot très familier et courant, car il s'agit d'un serveur Web très puissant et populaire qui peut être utilisé avec Node.js. Dans cet article, nous examinerons en profondeur comment déployer des applications Node.js à l'aide de Nginx afin que vous puissiez avoir plus de contrôle sur l'endroit à partir duquel vos applications Web sont servies.

Qu'est-ce que Nginx

Nginx est un serveur Web populaire utilisé pour divers sites Web et également présent dans de nombreux sites Web à forte charge. Il se caractérise par une vitesse rapide, une faible utilisation des ressources et peut gérer un grand nombre de demandes de connexion. La configuration de Nginx est très flexible et peut être modifiée selon les besoins. Nginx peut servir de serveur proxy inverse et gérer les fichiers statiques, la redirection, l'équilibrage de charge, etc.

Qu'est-ce que Node.js

Node.js est une plate-forme construite sur le moteur JavaScript Chrome V8 pour créer des applications Web rapides, évolutives et efficaces. Node.js utilise des modèles d'E/S événementiels et non bloquants, ce qui lui permet de gérer un grand nombre de demandes de connexion et de faire face à des scénarios de charge élevée. Node.js est idéal pour écrire des applications Web et des serveurs API en temps réel. Il s'agit d'un logiciel open source qui est devenu une technologie largement utilisée dans la communauté du développement Web.

Comment déployer l'application Node.js sur Nginx

Afin de déployer l'application Node.js sur Nginx, nous devons effectuer les étapes suivantes :

  1. Installer Node.js et Nginx

Avant de déployer l'application Node.js Avant, vous devez installer Node.js et Nginx sur votre serveur.

Installez Node.js sur Ubuntu :

~$ curl -sL https://deb.nodesource.com/setup_14.x | sudo bash -
~$ sudo apt-get install -y nodejs

sur Ubuntu Installez Nginx :

~$ sudo apt update
~$ sudo apt install nginx

  1. Écrire une application Node.js

Créez une application Node.js à titre d'exemple :

var http = require('http'); http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello Worldn');
}).listen ( 3000, '127.0.0.1');
console.log('Serveur exécuté sur http://127.0.0.1:3000/');

Enregistrer sous hello.js

    Démarrer l'application Node.js
Démarrer l'application

node hello.js

    Configure Nginx
Nginx utilise le fichier /etc/nginx/sites-available/default par défaut pour définir la configuration de chaque hôte virtuel. Nous pouvons modifier ce fichier et le configurer pour ajouter un serveur proxy inverse pour transférer les demandes de connexion du serveur Nginx vers l'application Node.js.

Modifiez le fichier par défaut

sudo nano /etc/nginx/sites-available/default

Modifiez le fichier comme suit :

server {

listen 80;
server_name example.com;

location / {
    proxy_pass http://127.0.0.1:3000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
}
}

Dans cet exemple, nous configurons le serveur pour écouter sur 80, transférez la requête vers le port 3000 de l'application Node.js.

    Redémarrez Nginx
Redémarrez Nginx pour que la configuration prenne effet.

sudo service nginx restart

    Testez l'application
Maintenant, nous devrions avoir un accès direct à l'application.

http://example.com/

Nous avons terminé le déploiement Nginx du programme Node.js. Vous avez maintenant appris à utiliser Node.js comme serveur proxy inverse et à utiliser Nginx pour déployer l'application Node.js. en production. En en apprenant davantage sur Nginx et Node.js, nous pouvons mieux maîtriser les compétences en développement Web et en gestion de serveur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn