美文网首页前端node
koa项目创建,上传服务器及nginx配置

koa项目创建,上传服务器及nginx配置

作者: 不伟心 | 来源:发表于2019-11-22 19:57 被阅读0次

    安装koa

     npm install koa --save
    

    安装koa2项目生成器并创建项目

    *(当然如果初学者的话可以先自行搭建,不要用下面的插件)

    npm install koa-generator -g
    koa2 nodePractice
    

    process.env

    process对象是全局变量,它提供当前node.js的有关信息,以及控制当前node.js的有关进程。因为是全局变量,它对于node应用程序是始终可用的,无需require()。
    既然process都是一个对象了,env自然是它的一个属性,这个属性返回包含用户环境信息的对象。在终端输入node后,在输入process.env可以看到打印出来的信息。

    • 但是Windows 和mac 电脑上的设置是不一样的,为了可以跨平台的设置和使用环境变量,需要安装cross-env

    安装cross-env

    npm install --save-dev cross-env
    

    可以在 package.json 中配置相关的端口和环境(port 3001 环境:local)

    "scripts": {
        "start": "  cross-env  PORT=3001  ENV=local  node bin/www ",
        "dev": "./node_modules/.bin/nodemon bin/www",
        "prd": "cross-env  PORT=3001  ENV=pro  pm2 start bin/www",
       //(pm2 是一个带有负载均衡功能的Node应用的进程管理器.当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, PM2是完美的)
        "test": "echo \"Error: no test specified\" && exit 1"
      },
    

    通过scp相关命令将本地项目传入服务器相关目录

    scp -r /Users/weiwang/nodepractice/* root@服务器ip:/root/nodeProject
    

    但是这样有一个弊端,无法筛选不想上传的文件夹

    通过下列方式重新上传项目: ( --exclude= 剔除node_modules目录 ,这个后边一定要跟上项目路径)

    rsync -avP --exclude=node_modules/  项目本地地址   root@服务器ip:/root/node
    

    启动项目

    npm run prd
    

    配置nginx 反向代理

    正常来说 nginx下就一个配置文件,nginx.conf , 如果所以的东西都放在这里管理起来不方便,我们可以在 conf.d 目录下进行创建配置文件 node.conf,然后在nginx.conf 中的http 块中加一句话就可以了:

    include /etc/nginx/conf.d/*.conf;
    

    node.conf 文件:

    server {
        listen  9090;   //服务监听的端口
            server_name   不能为空 ; // 自己服务器域名
            ssl on;
            ssl_certificate /etc/nginx/1_wangcarl.com_bundle.crt;  // https ssl证书相关配置
            ssl_certificate_key /etc/nginx/2_wangcarl.com.key; // https ssl证书相关配置
            ssl_session_timeout 5m;
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
            ssl_prefer_server_ciphers on;
    
          location / {
                proxy_pass http://localhost:3001/; //本地项目监听的端口 反向配置
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-NginX-Proxy true;
                proxy_ssl_session_reuse off;
                proxy_set_header Host $http_host;
                proxy_cache_bypass $http_upgrade;
                proxy_redirect off;
    
        }
    }
    
    

    reload nginx 服务器

    nginx -s reload
    
    • 这里边有一个坑:就是另起的一个配置文件一定要先配置根路径 / 要不配置是不起作用的

    最后 就可以通过访问自己域名下的端口进行相关api 测试了

    附pm2命令教程:pm2

    相关文章

      网友评论

        本文标题:koa项目创建,上传服务器及nginx配置

        本文链接:https://www.haomeiwen.com/subject/rwgqwctx.html