当前位置: 首页 > news >正文

Mac Vue 项目上传到阿里云服务器及 nginx

本以为很简单, 结果熬了大夜花十小时弄完, 希望能给大家带来帮助少走弯路

笔者环境: Mac + 云服务器 php 环境 + Vue 项目 + nginx

若未购买服务器, 请看另一篇搭建博客

文章目录

    • 一. 云服务器环境搭建
      • 1. 去镜像市场
      • 2. 选择 共享镜像 中后端条件和你项目相同的
      • 3. 使用 shell 工具
      • 3. 连接实例下载 nginx
      • 4. 配置 nginx
    • 二. Mac 环境项目相关
      • 1. 下载 homebrew
      • 2. 安装 nginx
      • 3. 配置 nginx
      • 4. vue 项目相关
      • 5. vue 脚本配置
      • 6. key.pem配置即使用
      • 7. 终端操作
    • 三. 坑点
      • 1. 本地出现 zsh: command not found: code
      • 2. 出现 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
      • 3. 出现 [::]:80 failed (97: Address family not supported by protocol)

一. 云服务器环境搭建

1. 去镜像市场

购买好服务器(或者准备用已有服务器搭建), 先点击’停止’, 再点击’更换操作系统’进入镜像市场

image-20220918020154450

image-20220918020132872

2. 选择 共享镜像 中后端条件和你项目相同的

image-20220918030555608

这里我前期的误区是因为后端 api 是有另一个服务器支持, 所以我直接用 os

如果直接用 os , 你需要下 nginx 和 相应的后端环境.

但如果你和我一样后端已经设置好(已经被搭建好的服务器支持), 直接选共享镜像的前几个环境就行(注意有的要收费)

3. 使用 shell 工具

终端或其他你习惯的也行, 我用的是阿里云的, 点击远程连接根据你的系统下载

image-20220918192344902

image-20220918192428307

接下来软件登录需要使用 assess id, 根据提示来(这一步根据你 shell 软件要求的来)

image-20220918020508528

3. 连接实例下载 nginx

验证通过后选择实例(如果看不到估计是你没选对地区), 进入 ssh 命令

如果是使用 os 镜像(即没有使用公共镜像), 下载 nginx

有两种下载方式, 查阅文章和实践后, 感觉直接 yum 就行

详情见下方链接

https://juejin.cn/post/6844904134345228301

4. 配置 nginx

os8 的 nginx 没有 sites-available, 所以需要自己添加

如果用的 Cenos 7, 是没有sites-availble 的

https://zhuanlan.zhihu.com/p/500061428

新手向, 我的 domain.com 配置如下, 里面的信息根据本地文档调试

server {
        listen 80;
        listen [::]:80;
        server_name 123.com;

        root /var/www;

        index index.html;

        location / {
                try_files $uri $uri/ @router;
                index index.html;
        }
                        
        location @router {
                rewrite ^.*$ /index.html last;
        }               
}       

记得使用 nginx -t 检查文件

可能会有个 80 的错误看第三点坑点

使用 nginx -s reload 重载文件

二. Mac 环境项目相关

1. 下载 homebrew

详情见

https://blog.csdn.net/weixin_46358949/article/details/126922190

2. 安装 nginx

brew install nginx

3. 配置 nginx

cd /usr/local/etc/nginx
code nginx.conf

如果 code 指令无效, 看第三点坑点

4. vue 项目相关

将项目 npm run build

接下来将npm run build 后的 dist 中的文件拷贝到nginx 的www下

终端进入 dist , 再使用

cp -r * /usr/local/var/www

终端输入nginx, 即成功本地 8080 使用

5. vue 脚本配置

在根目录下(不是 src) 创建脚本 depoly.sh

#!/bin/bash

echo "build 生成生产环境代码"

rm -rf dist && npm run build

echo "上传代码到云主机"

cd dist && scp -i ~/.ssh/key.pem -r *  root@主机公共ip地址:/var/www

6. key.pem配置即使用

在阿里云控制台云主机左侧栏的网络安全点击密钥对

image-20220918202639071

我们直接创建密钥对, 建议选字母名称,会自动下载到本地

接下来在终端到~/使用

cd .ssh

进入.ssh文件夹, 将下好的 pem 放进去

接下来的操作见

https://www.runoob.com/w3cnote/mac-os-ssh-pem.html

7. 终端操作

在项目终端使用

sh ./depoly.sh

就会自动把文件上传上去

三. 坑点

1. 本地出现 zsh: command not found: code

image-20220918013246947

选择 shell command 并 install

那么参考

https://blog.csdn.net/lxyoucan/article/details/112651085

2. 出现 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

https://blog.csdn.net/wd2014610/article/details/85639741

3. 出现 [::]:80 failed (97: Address family not supported by protocol)

vim 进这个文件 注释掉就好了

相关文章:

  • 51单片机学习:ADC模数转换实验--光敏电阻AD采集
  • postgresql源码学习(十五)—— 行锁③-死锁检测
  • 【linux】shell 编程之流程控制语句详解
  • [PAT练级笔记] 34 Basic Level 1034 有理数四则运算
  • 【探花交友】保存用户信息、上传用户头像、用户信息管理
  • ElasticSearch Client问题整理2
  • Python必知必会 os 模块详解
  • Promise系列学习
  • 线程同步的几种方式(2)
  • 第七章:面向对象编程(中级部分)
  • Redis知识-实战篇(1)
  • Pytorch搭建基本的GAN模型及训练过程
  • 3.7Docker consul的容器服务更新与发现
  • <位图(bitset)和布隆过滤器(BloomFilter)>——《C++高阶》
  • RxJava(四)-过滤操作符
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • CSS中外联样式表代表的含义
  • Go 语言编译器的 //go: 详解
  • HTTP那些事
  • java中具有继承关系的类及其对象初始化顺序
  • Phpstorm怎样批量删除空行?
  • select2 取值 遍历 设置默认值
  • Spring-boot 启动时碰到的错误
  • Vue 动态创建 component
  • 百度地图API标注+时间轴组件
  • 分享自己折腾多时的一套 vue 组件 --we-vue
  • 问题之ssh中Host key verification failed的解决
  • 说说我为什么看好Spring Cloud Alibaba
  • ​Linux·i2c驱动架构​
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • ‌JavaScript 数据类型转换
  • #android不同版本废弃api,新api。
  • #C++ 智能指针 std::unique_ptr 、std::shared_ptr 和 std::weak_ptr
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • #职场发展#其他
  • (2009.11版)《网络管理员考试 考前冲刺预测卷及考点解析》复习重点
  • (21)起落架/可伸缩相机支架
  • (k8s)Kubernetes 从0到1容器编排之旅
  • (多级缓存)缓存同步
  • (二)pulsar安装在独立的docker中,python测试
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (十一)图像的罗伯特梯度锐化
  • (算法)Travel Information Center
  • (一)WLAN定义和基本架构转
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • .net 4.0发布后不能正常显示图片问题
  • .NET Core 中插件式开发实现
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET 依赖注入和配置系统
  • @Autowired自动装配
  • [ solr入门 ] - 利用solrJ进行检索
  • [20170705]lsnrctl status LISTENER_SCAN1
  • [2544]最短路 (两种算法)(HDU)