云服务器部署Node.js项目的方法步骤(小白系列)

 更新时间:2020年03月23日 09:45:02   作者:自学两年半的前端练习生  
这篇文章主要介绍了云服务器部署Node.js项目的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

以aliyun为例,选购服务器建议选择CentOS, 配置按照自己的需求选择,付款成功后进入控制台页面,重置root密码即可远程登录服务器。可在控制台点击远程登录,也可在安装了ssh的主机上登录

# 查看公网ip
# 以下为示例公网ip
ssh root@150.77.1.85

环境安装

安装node.js

# As root
curl -sL https://rpm.nodesource.com/setup_12.x | bash -

# No root privileges 
curl -sL https://rpm.nodesource.com/setup_12.x | sudo bash -

yum install -y nodejs

#如需编译c++插件
yum install gcc-c++ make
# or: yum groupinstall 'Development Tools'

检查是否安装成功

~$ node -v
v12.16.1
~$ npm -v
6.13.0

设置淘宝npm的淘宝镜像

npm config set registry "https://registry.npm.taobao.org

全局安装pm2

npm install pm2 -g

安装nginx

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

下载nginx

# 首先需确认安装以下软件
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

cd /usr/local
mkdir nginx
cd nginx
#下载最新版nginx
wget http://nginx.org/download/nginx-1.16.1.tar.gz
tar -zxvf nginx-1.16.1.tar.gz
# 拷贝到nginx文件夹
cp -r /usr/local/nginx/nginx-1.16.1/* /usr/local/nginx/
./configure
make
make install

修改config

cd conf
vi nginx.conf

#修改配置文件
#省略其他不做修改篇配置

http {
  server_tokens off;
  include    mime.types;
  default_type application/octet-stream;
  #access_log logs/access.log main;
  sendfile    on;
  #tcp_nopush   on;

  #keepalive_timeout 0;
  keepalive_timeout 65;

  gzip on;
  
  # 修改此处 nginx会自动加载enabled-server下面所有的配置文件
  include /usr/local/nginx/enabled-server/*;
  ...
}

有时候我们需要部署多个网站,所以一般新建以网站为名的配置文件,如myblog.conf

vi default.conf
# 配置文件
upstream nodepro {
  server 127.0.0.1:3000; #项目运行的端口号, 按实际修改
  keepalive 64;
}

server {
  listen 80; #要监听的端口号
  server_name xxxx.com www.xxxx.com; # 服务器名称,ip地址或域名,可以写多个,用空格隔开

  location / {
    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_set_header Connection "";
    proxy_pass http://nodepro; # 这里要和最上面upstream后的应用名一致,可以自定义
  }
}

检测nginx配置是否成功

cd ..
./nginx -t
# 修改成功
nginx: the configuration file /www/server/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /www/server/nginx/conf/nginx.conf test is successful

启动nginx服务器

./nginx

服务器域名备案

  1. aliyun官网购买域名并实名认证,通过审核后可开始备案
  2. 官网有代备案系统, 点击备案专区,根据提示进行备案(3-15个工作日)
  3. 控制台点击网络与安全 -> 安全组 -> 配置规则 -> 添加安全组规则
  4. 协议类型选择要创建的规则,如mysql(3306),redis(6379),http(80/80),https(443),可自定义

域名解析

  1. 在域名服务中找到域名列表
  2. 点击解析
  3. 点击添加记录,记录类型默认选择A,主机记录可以添加顶级域名和二级域名。解析路线默认即可,记录值添加服务器的公网IP,

最后

在服务器运行你的Nodejs项目

pm2 start app.js

此时即可在外网通过域名访问网站了。此文为学习记录,如有错误,欢迎指正!

到此这篇关于云服务器部署Node.js项目的方法步骤(小白系列)的文章就介绍到这了,更多相关云服务器部署Node.js内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • node npm yarn报错error:不是内部或外部命令

    node npm yarn报错error:不是内部或外部命令

    文章介绍了如何安装和配置Node.js、npm和yarn,并解决无法正常使用的问题,主要步骤包括:正确安装环境变量、配置用户变量和系统变量、设置全局安装模块和缓存目录的环境变量,以及手动配置yarn的环境变量
    2024-11-11
  • npm run dev和npm run serve的区别小结

    npm run dev和npm run serve的区别小结

    npm run serve和npm run dev是在开发阶段使用npm运行脚本的两种常见命令,本文就来介绍一下这两者的区别,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • node文件资源管理器的图片预览从零实现

    node文件资源管理器的图片预览从零实现

    这篇文章主要为大家介绍了node文件资源管理器的图片预览从零实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • NodeJs基本语法和类型

    NodeJs基本语法和类型

    这篇文章主要介绍了NodeJs基本语法和类型的相关资料,需要的朋友可以参考下
    2015-02-02
  • 如何用nodejs给C#写一个数据表的实体类生成工具

    如何用nodejs给C#写一个数据表的实体类生成工具

    这篇文章主要介绍了如何用nodejs给C#写一个数据表的实体类生成工具,对nodejs感兴趣的同学,可以参考下
    2021-05-05
  • 如何通过node.js来写接口详解

    如何通过node.js来写接口详解

    最近研究了一下nodejs写接口,发现接口并不难写,这篇文章主要给大家介绍了关于如何通过node.js来写接口的相关资料,文中通过实例代码和图文介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • node.js中的fs.readdir方法使用说明

    node.js中的fs.readdir方法使用说明

    这篇文章主要介绍了node.js中的fs.readdir方法使用说明,本文介绍了fs.readdir方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下
    2014-12-12
  • Nodejs实现短信验证码功能

    Nodejs实现短信验证码功能

    使用Nodejs的开发者愈来越多,基于Nodejs的后台开发也多了起来,像短信验证码、短信群发、国际短信这些需求,完全可以采用第三方接口来实现,云片就提供了这样的接口
    2017-02-02
  • nodejs实现聊天机器人功能

    nodejs实现聊天机器人功能

    这篇文章主要介绍了nodejs实现聊天机器人功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • nodejs修复ipa处理过的png图片

    nodejs修复ipa处理过的png图片

    ipa本身是一个zip文件改后缀后解压缩就能看到应用内使用的资源文件,其中png图片资源xcode打包的时候做了些手脚下面我们来看看如何修复这些问题
    2016-02-02

最新评论