Maison  >  Article  >  Opération et maintenance  >  Apprenez à utiliser NGINX et PM2 pour déployer des applications Node.js sur des serveurs VPS

Apprenez à utiliser NGINX et PM2 pour déployer des applications Node.js sur des serveurs VPS

王林
王林original
2023-09-26 17:54:411273parcourir

Apprenez à utiliser NGINX et PM2 pour déployer des applications Node.js sur des serveurs VPS

Vous apprendre à utiliser NGINX et PM2 pour déployer des applications Node.js sur des serveurs VPS

Aujourd'hui, je vais vous présenter comment utiliser NGINX et PM2 pour déployer des applications Node.js sur des serveurs VPS. Node.js est un framework de développement back-end très populaire, tandis que NGINX est un serveur proxy inverse hautes performances et PM2 est un puissant gestionnaire de processus. En utilisant ces trois outils ensemble, nous pouvons réaliser un déploiement de serveur efficace et stable.

  1. Assurez-vous que Node.js et NPM sont installés. S'il n'est pas installé, vous pouvez l'installer avec la commande suivante :
sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm
  1. Installez PM2 Process Manager. PM2 peut nous aider à gérer le processus des applications Node.js et à les redémarrer automatiquement lorsque l'application plante. Installez à l'aide de la commande suivante :
sudo npm install -g pm2
  1. Créez une simple application Node.js. Créez un nouveau dossier sur votre VPS et créez un fichier nommé app.js à l'intérieur. Écrivez le code de votre application dans app.js. Par exemple, voici un simple code d'application Express : app.js 的文件。在 app.js 中编写你的应用程序代码。例如,以下是一个简单的Express应用程序代码:
var express = require('express');
var app = express();

app.get('/', function(req, res) {
  res.send('Hello World!');
});

app.listen(3000, function() {
  console.log('App listening on port 3000!');
});
  1. 使用PM2启动应用程序。在终端中,导航到应用程序目录并运行以下命令:
pm2 start app.js

现在,你的应用程序已经通过PM2启动,并且会在失败时自动重新启动。

  1. 配置NGINX反向代理。我们希望将 NGINX 配置为监听80端口,将传入的请求转发到我们的Node.js应用程序。打开NGINX配置文件,路径一般为 /etc/nginx/sites-enabled/default,并进行如下配置:
server {
  listen 80;
  server_name your-domain.com;

  location / {
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   Host      $http_host;
    proxy_pass         http://127.0.0.1:3000;
  }
}

在该配置中,将 your-domain.com 替换为你的域名。然后,将 127.0.0.1:3000

sudo service nginx reload
      Démarrez l'application en utilisant PM2. Dans le terminal, accédez au répertoire de l'application et exécutez la commande suivante :
    1. rrreee
    Votre application a maintenant été lancée via PM2 et redémarrera automatiquement en cas d'échec.

      Configurez le proxy inverse NGINX. Nous souhaitons configurer NGINX pour écouter sur le port 80 et transmettre les requêtes entrantes à notre application Node.js. Ouvrez le fichier de configuration NGINX, le chemin est généralement /etc/nginx/sites-enabled/default, et configurez-le comme suit :

      rrreee

      Dans cette configuration, changez votre-domaine. com par votre nom de domaine. Ensuite, remplacez <code>127.0.0.1:3000 par l'adresse et le port sur lesquels votre application s'exécute.

      🎜🎜Enregistrez et fermez le profil. Ensuite, rechargez la configuration NGINX pour prendre effet : 🎜🎜rrreee🎜 NGINX enverra désormais les requêtes entrantes à notre application Node.js via le proxy inverse. 🎜🎜Félicitations ! Vous avez déployé avec succès une application Node.js sur un serveur VPS à l'aide de NGINX et PM2. Vous pouvez désormais accéder à votre nom de domaine et devriez pouvoir voir ce que votre application exécute. 🎜🎜Ce qui précède est un bref guide d'utilisation de NGINX et PM2 pour déployer des applications Node.js sur des serveurs VPS. J'espère qu'il vous sera utile. 🎜

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