• nodejs 从部署到域名访问


    一、Node.js 安装在Ubuntu上

      用如下代码下载nodejs 8.x最新版并安装,npm 也会随着一起安装

    curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
    
    sudo apt-get install -y nodejs

       安装完成之后,查看Nodejs、npm的版本号

    node --version
    npm --version

    如无错误,应该会输出对应的版本号 如下图: 

    二、安装pm2

      
    PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单。

    全局安装命令

    npm install -g pm2

     pm2 启动Node 命令:

    pm2 start server.js  --name dev-api

      启动成功之后可以通过pm2 list 来查看所有进程列表

    三、安装Nginx 并实现反向代理

    安装Nginx

    sudo apt-get install nginx

    启动Nginx

    sudo /etc/init.d/nginx start

    然后通过访问http://localhost 应该就能看到

    表示已安装成功!

    下一步,就是如何通过域名来访问我们的Nodejs 程序

      我已将dev-api.xxx.com 这样的二级域名 解析到我的服务器上(如不会解析的话,可以在阿里云上查看相关资料)

    1. 修改nginx的配置文件(此步骤非必须) 
      cd /etc/nginx/
      vim nginx.conf

       主要是修改 61 62 行代码。主要是因为我把所有配置文件放到了sites-available 文件中,这个是看个人的,只要是放入对应文件夹,否则无法访问。

            2. 复制一个配置文件,也可以自己新建一个,如名字为dev-api.conf

    cd sites-available/    
    cp default dev-api.conf

    内容为:

    server {
             listen 80;
             server_name dev-api.xxx.com;   #域名
             location / {
                 # First attempt to serve request as file, then
                 # as directory, then fall back to displaying a 404.
                 proxy_pass http://localhost:8080;   #端口号
                 proxy_set_header Host $host;
                 proxy_set_header X-Real-IP $remote_addr;
                 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     
              }
    }

    配置完之后

    重启一下Nginx

    /etc/init.d/nginx restart

    如果多个nodejs 程序,只要在sites-available文件中,建立所需对应的配置文件即可。

    修改一下server_name xxxx.com; 和监听的端口号即可

     

  • 相关阅读:
    more命令
    mktemp命令
    有效的括号字符串
    mc命令
    字符串相加
    Vue中虚拟DOM的理解
    chattr命令
    记近一年线上项目经验及架构变更记录
    微博AnalysisQl动态数据视图元数据设计
    搭建prometheus+grafana监控SpringBoot应用入门
  • 原文地址:https://www.cnblogs.com/MrLee/p/9388353.html
Copyright © 2020-2023  润新知