关于前端vue打包项目以及静态网站部署项目到阿里云ECS云服务器初学简单教程
准备工作:
1.首先进入https://ecs.console.aliyun.com/ 领取或者购买一台简单的ECS云服务器。
进入网站注册登录后拉到页面最下面或者顶部搜索免费云服务器领取立即试用 ,当然富哥花钱买一台服务器也行。

创建完了以后可以进入云服务ECS工作台,然后就是以下界面

点击右边的实例进入到实例界面 会默认生成一个实例(也可以自己尝试创建新的实例)
给当前的实例修改成自己想要保存的实例名称和密码(自己要记住后面需要用到)

然后点击左侧的网络与安全>安全组并且进入创建一条80端口的安全组规则并保存

回到刚才的实例列表点击远程连接并通过Workbench远程连接(其他方式可以自己尝试),输入前面自己修改的实例名称+密码登录。
会进入到一个黑色界面类似控制台的页面

有两个比较重要的模板需要使用 右上角的文件>打开新文件树以及会话>新终端
一、在右侧的新终端搭建我们的Docker CE(社区版)企业版则为Docker EE。
首先安装Docker依赖库
yum install -y yum-utils device-mapper-persistent-data lvm2
添加Docker CE的软件源信息
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装Docker CE
yum makecache fast
yum -y install docker-ce
最后启动Docker服务
systemctl start docker
额外的两个Docker常用命令
重新加载服务配置
systemctl daemon-reload
重启Docker服务
systemctl restart docker
二、使用Docker安装Nginx服务
查看Docker镜像仓库中Nginx的可用版本
docker search nginx
拉取最新版的Nginx镜像
docker pull nginx:latest
查看本地镜像
docker images
运行容器
docker run --name nginx-test -p 8080:80 -d nginx
命令参数说明:
--name nginx-test:容器名称。
-p 8080:80: 端口进行映射,将本地8080端口映射到容器内部的80端口。
-d nginx: 设置容器在后台一直运行。
然后在浏览器输入http://<ECS公网地址>:8080打开Nginx服务。代表Nginx服务已经正常运行。

附:参考配置地址:https://developer.aliyun.com/article/946460
三、单独安装Nginx依赖并使用Naginx
安装依赖包
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
下载并解压安装包
//cd进入/usr/local文件目录
cd /usr/local
//创建一个nginx文件夹
mkdir nginx
//cd进入nginx文件
cd nginx
//下载tar包
wget http://nginx.org/download/nginx-1.13.7.tar.gz
//下载好进行解压命令
tar -xvf nginx-1.13.7.tar.gz
安装Nginx
//进入nginx目录
cd /usr/local/nginx
//进入目录
cd nginx-1.13.7
//执行命令 考虑到后续安装ssl证书 添加两个模块
./configure --with-http_stub_status_module --with-http_ssl_module
//执行make命令
make
//执行make install命令
make install
注意make有可能会出现很多报错的情况
简单列举几项解决方案(其他的自行百度)
第一种错误
src/os/unix/ngx_user.c: In function ‘ngx_libc_crypt’:
src/os/unix/ngx_user.c:36:7: error: ‘struct crypt_data’ has no member named ‘current_salt’
36 | cd.current_salt[0] = ~salt[0];
| ^
make[1]: *** [objs/Makefile:797:objs/src/os/unix/ngx_user.o] 错误 1
make[1]: 离开目录“/home/zyz/nginx-1.12.0/nginx-1.12.0”
make: *** [Makefile:8:build] 错误 2
解决方案
打开文件树列表进入/usc/local/nginx/nginx-1.13.7/src/os/unix/ngx_user.c文件 注销 cd.current_salt[0] = ~salt[0];保存
第二种错误
src/http/ngx_http_script.c: 在函数‘ngx_http_script_add_full_name_code’中:
src/http/ngx_http_script.c:1296:18: 错误:cast between incompatible function types from ‘size_t (*)(ngx_http_script_engine_t *)’ {或称 ‘long unsigned int (*)(struct <匿名> *)’} to ‘void (*)(ngx_http_script_engine_t *)’ {或称 ‘void (*)(struct <匿名> *)’} [-Werror=cast-function-type]
code->code = (ngx_http_script_code_pt) ngx_http_script_full_name_len_code;
^
cc1:所有的警告都被当作是错误
make[1]: *** [objs/Makefile:893:objs/src/http/ngx_http_script.o] 错误 1
make[1]: 离开目录“/usr/download/nginx-1.14.1”
make: *** [Makefile:8:build] 错误 2
解决方案
打开文件树列表进入/usc/local/nginx/nginx-1.13.7/objs/Makefile文件
CFLAGS = -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g
改为
CFLAGS = -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -g
如何启动Nginx服务
输入命令
cd /usr/local/nginx/sbin
到目录执行:
./nginx
第三种错误(Nginx启动错误)
Nginx启动时提示nginx: [emerg] still could not bind()
首先查看Nginx配置文件的端口为80端口
netstat -ntlp|grep 80
如果能查到有tcp的数据并且最后是6****/nginx:worker
输入kill关闭占用的进程直到查询不到占用情况
最后输入重启Nginx就不会报错了
./nginx
附简单的nginx命令
./nginx 启动
./nginx -s stop 关闭
./nginx -s reload 重启
详细命令参考:https://blog.csdn.net/GyaoG/article/details/118054247
四、上传打包好的前端web项目或者网址
先下载一个叫FileZilla免费开源的FTP客户端软件。
下载地址:http://soft.ykmjk.com/sinfo/104695380_4002451.html
下载好并安装打开软件

输入阿里云的公网IP以及用户名和密码 端口进行连接,连接成功后会出现上面的左右两边的文件列表
左侧为本地的站点文件(找到你需要上传的网址或者dist打包项目)
右侧为云服务ECS的的文件列表(找到/usc/local/nginx/html目录创建你的文件夹并将打包好的文件内容上传到里面,例如文件名appyj)
然后就可以通过浏览器打开http://8.134.**.***/appyj 就可以访问项目了(这里的IP是云服务器的公网IP)
这里只上传了vue项目打包后的文件 上传多个项目就多新建目录并上传就可以了。
不同的端口使用还在研究 有大佬也可以告知一下。。。(写的有点随意,只作为个人案例记录,仅供参考)。
关于前端vue打包项目以及静态网站部署项目到阿里云ECS云服务器初学简单教程的更多相关文章
- 后端 SpringBoot + 前端 vue 打包发布到Tomcat
近段时间 做了一些前后端的开发 需要在Tomcat里进行发布 把自己整理的分享出来 后端打包 pom.xml 文件 <packaging>war</packaging> ...
- vue打包添加时间戳,实现更新项目自动清除缓存
本来vue打包会自动用chunkhash来解决缓存问题,但是部分浏览器不会自动更新,因此可以通过后面t=${ }的不同来实现自动重新加载文件,保持最新的界面 (1).webpack打包:修改build ...
- 将你的前端应用打包成docker镜像并部署到服务器?仅需一个脚本搞定
1.前言 前段时间,自己搞了个阿里云的服务器.想自己在上面折腾,但是不想因为自己瞎折腾而污染了现有的环境.毕竟,现在的阿里云已经没有免费的快照服务了.要想还原的话,最简单的办法就是重新装系统.而一旦重 ...
- 阿里云ECS云服务器CentOS部署个人网站
ping了一下coding pages和阿里云服务器的速度,意外感觉coding的速度反而更快.不过为了折腾,还是把博客迁移到阿里云,跌跌撞撞遇到很多坑,大多是由于对指令不熟悉以及部分教程省略了部分步 ...
- Vue打包后访问静态资源路径问题
Vue介绍中static文件夹里放的是静态资源目录,如图片.字体等. 我们发现运行npm run start后本地图片路径是没问题的,但是打包上传后会怎么样呢? 我们知道,执行npm run buil ...
- fastapi+vue搭建免费代理IP网站部署至heroku
说明 最近需要用到一些HTTP的代理,用于爬虫去爬取信息,搜索了一些网站,貌似现在这类提供免费代理IP的网站很多,刚好最近看了点vue的视频,弄个网站练练. 部署到heroku,预览地址:点击这里 F ...
- 使用 Hexo 创建项目文档网站
当我们发布一个开源项目的时候,最重要的事情之一就是要创建项目文档.对使用项目的用户来说,文档是非常有必要的,通常我们可以使用下面这些方式来创建文档: GitHub Wiki:在 Github 上我们可 ...
- Azure CDN 为静态网站创建内容分发网络
一,引言 最近刚刚接触 Edi.Wang 的 Moonglade 博客系统,正好这套系统中有使用到 Azure CND (内容分发网络),那就学习学习.那么今天就尝试利用 Azure CDN 来发布静 ...
- Nuxt项目搭建到发布部署
一.项目目录结构: 方式1.直接利用官方提供好的脚手架工具进行搭建:npx create-nuxt-app <项目名> 目录会是这样(具体目录都放些什么,请看官方文档,详细): 方式2.手 ...
- Maven项目搭建(三):Maven直接部署项目
上一章给大家讲解了如何使用Maven搭建SSM框架项目. 这次给大家介绍一下怎么使用Maven直接部署项目. Maven直接部署项目 1.新建系统变量CATALINA_HOME,值为:Tom ...
随机推荐
- 阿里云CentOS7 下部属nginx+uwsgi+python3+django
安装依赖包 yum -y groupinstall "Development tools" yum install openssl-devel bzip2-devel expat- ...
- 继承和组合关系: is a & has a
继承:is-a 比如 营销人员类 和 开发人员类 都继承自 职工类,营销人员 is-a 职工.组合:has-a 比如 汽车类 包含一个 发动机类 的对象,汽车 has-a 发动机.
- 使用ActiveMQ中遇到的端口占用问题
原Linux虚拟机中安装了ActiveMQ,EMQX.后期使用中主要使用EMQX来实现消息服务,停止了ActiveMQ.但是虚拟机挂起之后,长时间未再使用.近期由于有使用ActiveMQ的需要,而临时 ...
- 3、IOC创建对象的方法
目录 3.IOC创建对象的方法 4.Spring配置 4.1.别名 4.2.Bean的配置 4.3.import 5.依赖注入 5.1.构造器注入 5.2.Set方式注入[重点] 5.3.扩展方式注入 ...
- Shell脚本之while read line的用法
Shell脚本之while read line的用法 while read line do - done < file read通过输入重定向,把file的第一行所有的内容赋值给变量line,循 ...
- 三天吃透Spring Cloud面试八股文
本文已经收录到Github仓库,该仓库包含计算机基础.Java基础.多线程.JVM.数据库.Redis.Spring.Mybatis.SpringMVC.SpringBoot.分布式.微服务.设计模式 ...
- vite项目生产环境去掉console信息【转载】
环境变量引入 通常去掉console为生产环境,即需要引入环境变量.具体请看这篇文章: vite项目初始化之~环境变量 注意 与webpacak相比,vite已经将这个功能内置到了,所以我们只需要配置 ...
- 【Visual Leak Detector】在 QT 中使用 VLD(方式三)
说明 使用 VLD 内存泄漏检测工具辅助开发时整理的学习笔记. 目录 说明 1. 使用前的准备 2. 在 QT 中使用 VLD 2.1 复制 lib 库及头文件 2.2 在项目 .pro 文件中指明路 ...
- ThreadLocal 类
更多内容,访问 IT-BLOG ThreadLocal 并不是一个Thread,而是 ThreadLocalVariable(线程局部变量).也许把它命名为 ThreadLocalVar更加合适.线程 ...
- Redis分布式Session和普通的cookie session有什么区别?
Redis 是一种高性能的缓存和 key-value 存储系统,常被用来实现分布式 Session 的方案.在这种方案中,用户的登录信息存储在 Redis 中,而不是存储在本地的 cookie 或 s ...