zoukankan      html  css  js  c++  java
  • 阿里云部署node接口

    前言:

    最近一段时间在学习nodejs编程,我们知道现在做软件项目主流是前后端分离操作。作为一个前端小白,为了实现一个人完成整个项目的心愿,用nodejs编写了后端代码,准备部署到阿里云服务器上,作为接口供前端使用。

    操作目的:

    (1)熟悉阿里云服务器上安装的linux系统操作
    (2)配置nodejs环境,并编写项目
    (3)配置mongoDB数据库
    (4)熟练操作shell命令,操作、部署项目

    用到的环境、软件:

    阿里云服务器、Xshell、Xftp、CentOS7.3、mongoDB、postman、Robo 3T

    具体操作:

    1. 购买阿里云服务器、安装centOS 7.3;

    2. 安装Xshell、Xftp,连接远程服务器:
      用Xshell远程连接云服务器:

    连接成功,进入shell界面:

    1. 安装Node.js

      解压,测试安装是否成功:

    此时,node.js已经安装成功,但仍不能全局使用node 和 npm,用以下命令修改以达到目的。
    补充知识:
    ln是linux中一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,(symbolic代号的意思)
    具体用法是:ln -s 源文件 目标文件

    由分析可知,node解压在了/root下,那么我们要用命令:
    ln -s /root/node-v8.9.3-linux-x64/bin/node /usr/sbin/node

    执行文件命令,查看:

    同理更改npm,测试查看:

    1. 安装mongoDB

    解压:

    创建数据和日志存放目录

    更改配置,启动mongodb命令:

    将下列代码填写到 mongo.conf:

    dbpath=/mongodb/data
    logpath=/mongodb/logs/mongo.log
    logappend=true
    journal=true
    quiet=true
    port=27017
    fork=true #后台运行
    bind_ip=0.0.0.0 #允许任何IP进行连接auth=false #是否授权连接
    

    将安装包移动到usr/local

    修改环境变量:
    尝试了无权限修改 /~/.bashrc 所以改为软连接

    运行 mongo –config /user/local/mongodb/logs/mongo.conf
    再运行mongo,得:

    这时应该打开第二个窗口 进入/usr/local/mongodb/bin,运行./mongod 即可进入数据库:

    数据库搭建完成

    第二次进入 直接进 usr/local/mongoDB/bin 运行 ./mongod开启数据库
    5. 用xftp传输项目到云服务器上

    用xftp将项目拖至 /home文件夹下

    查看是否成功:

    1. 运行代码

    先重新软连接

    运行代码报错:缺少包

    安装一系列包后:
    服务器和数据库连接成功:

    但是在postman测试仍不能连接成功

    经查证,要在阿里云开放端口:

    项目部署成功!

    1. 最终成果:
      接口1:发送邮箱验证码接口:

    接口2:注册接口!

    用Robo 3T查看刚才注册的用户:

    接口3:登录接口

    假设输错密码:

    至此完毕!
    8. 总结
    学习了一个学期的linux,觉得这门课对我们来说意义重大。项目工程部署必会用到,这次大作业算是在项目中实践了一回。在安装配置的过程中踩了很多坑,各种权限各种包问题层出不穷,特别是装mongodb的时候!经过查阅资料,搜索问题,最终终于解决了,让项目成功在云服务器上跑了起来!激动!!!

    后续:我弄了一个apidoc文档 可是linux上总是软连接不成功 只能每次运行用/usr/local/node/bin/apidoc -i ./ -o ./dir来运行apidoc

    具体代码github:我的github地址

  • 相关阅读:
    学习了一下调色理论
    几个同步软件
    慢性咽炎
    flash行情
    C#创建Windows服务
    .net下 foreach 与 for 的效率比较测试
    HTML服务器控件与Web服务器控件的区别
    c#遍历HashTable
    ASP.NET中Server与Request对象的方法
    .net内存回收与Dispose﹐Close﹐Finalize方法
  • 原文地址:https://www.cnblogs.com/xmjs/p/13336825.html
Copyright © 2011-2022 走看看