Vue Nginx Node PM2 反向代理 项目部署

Vue Nginx Node PM2 项目部署

个人回忆使用,不是太详细,会的人应该能懂.

服务器

  1. 阿里云购买的 ECS
  2. 有个服务器,建议买个域名,但是没有域名需要备案,比较麻烦,我的还在备案中,所以就用ip来做测试
  3. ECS => 实例 => 安全组配置 => 配置规则 => 快速配置 打开80端口

    不会的百度,一大堆

    1. 解析域名什么的,添加到解析列表里面,就好了

Node

测试项目是一个教程,前后端分离,便于测试 client node-app 两个部分

  1. node 项目里面没啥说的,只是写法不一样.
  2. 关于IP有大佬详解

    0.0.0.0什么鬼

// 第一种
 // 这一种很简单,
const app = express();
...
const port = 5001;
app.listen(port, () => {
  console.log(`Server running on port ${port}`);
});

// 第二种

...
var http = require('http');
http.createServer((req, res) => {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('hello node js');

}).listen(5001,"0.0.0.0");

// 这种类型 0.0.0.0 任意IP可以访问
  1. node 项目package.json文件

    1. 安装pm2

      npm install -g pm2
          2. 可能会出现安装失败的问题,建议在管理员命令窗口执行

Vue

  1. 在Vue中需要更改配置文件,设置代理
  2. 根据Vue cli版本不同 webpack的配置文件也不一样,我用的是3.0 ,文件名vue.config.js,其他版本自行百度,都一样
        devServer: {
            open: true,
            host: 'localhost',
            port: 8081,
            https: false,
            hotOnly: false,
    
            proxy: { // 配置跨域
                '/api': {
                    target: 'http://4x.xxx.128.95/api/', //服务器ip
                    ws: true,
                    changOrigin: true,
                    pathRewrite: {
                        '^/api': ''
                    }
                }
            },
    
            before: app => { }
        }

    这部分就是我node上的接口地址

    app.use('/api/users', users);
    app.use('/api/profile', profiles);

Nginx

  1. 百度吧太复杂,推荐技术胖

    技术胖

  2. 配置 文件
    
       cd ~
       cd /etc/nginx/conf.d
  3. 新建一个配置文件
    vim web-test.conf
    
    upstream zijinguanli {
     server 127.0.0.1:5001;
     keepalive 64;
    }
    
    server {
     listen 80;
     server_name 4x.1xx.1xx.xx;
    
     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://zijinguanli;  //和upstream 后面一致,反向代理
     }
    }
    suod nginx -t
    
    //出现表示成功
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
    

pm2

然后就是pm2 启动项目

可能会出现防火墙未关闭的问题

1. systemctl stop  firewalld 

这样就完事 当然有大佬详细说明大佬

原文地址:https://www.cnblogs.com/lakemonster/p/10565254.html

时间: 2024-08-02 06:22:24

Vue Nginx Node PM2 反向代理 项目部署的相关文章

tomcat配置及基于nginx、apache反向代理tomcat

如今,基于Web的应用越来越多,传统的Html已经满足不了如今的需求.我们需要一个交互式的Web,于是便诞生了各种Web语言.如Asp,Jsp,Php等.当然,这些语言与传统的语言有着密切的联系,如Php基于C和C 语言,Jsp基于Java语言.Tomcat即是一个Jsp和Servlet的运行平台. Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成.由于有了Sun的参与和支持,最新

Nginx高可用反向代理搭建

Nginx高可用反向代理搭建 Nginx简介 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名. Nginx 可以在大多数 Unix like O

Nginx+Tomcat实现反向代理及动静分离

通常tomcat部署结构 通常tomcat前端是nginx或apache,后端都为tomcat,也就意味着无论前端是什么角色都是以代理的方式进行工作的 但是要注意的是如果基于nginx做反向代理,转发请求到tomcat的时候是基于http协议进行转发的 但注意的是tomcat的连接器有httpajp jk2 jserv 而如果基于nginx做转发的话只支持http做转发 而如果apache做代理转发的话,几乎常用协议都支持 但常用的连接类型都是ajp协议,因为ajp协议可以工作在二进制模式下,而

五、Nginx多Server反向代理配置

Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. server_name的匹配顺序 Nginx中的server_name指令主要用于配置基于名称虚拟主机,server_name指令在接到请求后的匹配顺序分别为: 1.准确的server_name匹配,例如: 1 server { 2 listen 80; 3 server_name www.ooxx.com; 4 ... 5 } 2.以*通配符开始

haproxy反向代理环境部署

之前介绍过nginx反向代理和负载均衡的部署,今天这里介绍下haproxy反向代理的部署过程. 背景:前方有一台haproxy代理机器(有公网ip),后方两台realserver机器(没有公网ip,部署了很多站点)将域名解析到haproxy代理机器的公网ip,在haproxy配置文件里,根据域名转发至后端realserver上. haproxy代理:根据域名进行转发(直接是域名对域名)nginx代理:根据端口进行转发(一个域名对于后端realserver的一个端口,多个域名就对于多个端口)

Nginx多Server反向代理配置

Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. 下面我就来说说server_name的使用吧: server_name的匹配顺序 Nginx中的server_name指令主要用于配置基于名称虚拟主机,server_name指令在接到请求后的匹配顺序分别为: 1.准确的server_name匹配,例如: server { listen 80; server_name ssdr.info www.s

Centos7下Nginx+Tomcat配置反向代理,使用memcached解决session一致性问题

一.session一致性问题 使用集群方案解决网站高并发问题时,就会部署多台应用服务器.当用户第一次通过客户端(如:浏览器)访问服务器时,服务器会创建对应的session, 使用Nginx反向代理,假如用户A第一次访问站点,被反向代理到服务器一处理,服务器一创建对应sessionA记录信息,用户A再次访问站点时,被反向代理到服务二处理, 而服务器二没有记录用户A的session信息,就会新创建sessionB,导致用户A之前操作丢失. 我们可以通过让多个服务器统一到同一个地方新建session和

Nginx安装和反向代理配置

Nginx安装和反向代理配置 Nginx安装需要一些准备工作. 安装gcc等 yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel 还需要安装pcre,PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 Perl兼容的正则表达式库. yum -y install pcre 下载Nginx源码包,这里选择是1.7.8版本.并且解压缩,并且编译 wge

nginx+tomcat实现反向代理的负载均衡

nginx+tomcat实现反向代理的负载均衡 安装java环境 server12: [[email protected] ~]# sh jdk-6u32-linux-x64.bin [[email protected] ~]# mv jdk1.6.0_32/ /usr/local/ [[email protected] ~]# cd /usr/local/ [[email protected] local]# mv jdk1.6.0_32/ java [[email protected] lo