中英文企业网站模板,自我介绍网页设计模板,网站年费,网站备案的核验单#x1f525;博客主页#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞#x1f44d;收藏⭐评论✍ 文章目录 1.0 云服务器的准备 2.0 Xshell 和 Xftp 软件 2.1 Xshell 介绍 2.2 Xftp 介绍 3.0 在云服务器进行环境配置 3.1 安装 JDK 3.2 安装 MySQL 3.3 安装 Nginx 4.0 SpringB… 博客主页 【小扳_-CSDN博客】 ❤感谢大家点赞收藏⭐评论✍ 文章目录 1.0 云服务器的准备 2.0 Xshell 和 Xftp 软件 2.1 Xshell 介绍 2.2 Xftp 介绍 3.0 在云服务器进行环境配置 3.1 安装 JDK 3.2 安装 MySQL 3.3 安装 Nginx 4.0 SpringBoot 后端代码进行打包上传服务器 5.0 Vue 前端代码进行打包上传服务器 6.0 nginx 配置文件结构 6.1 先了解以下配置文件的结构 6.2 nginx 主要配置 6.2.1 静态 HTTP 服务器配置 6.2.2 反向代理服务器配置 6.2.3 负载均衡配置 6.2.4 虚拟主机配置 1.0 云服务器的准备 使用云服务是为了可以得到一个 Linux 环境比如说常用到的 Ubuntu 的配套程序。 使用云服务器不仅环境搭建简单避免折腾同时还有一个最大的好处部署在云服务器上的项目可以直接被外网访问到也就能让我们自己写的程序可以给别人直接使用。 可以直接在腾讯云、阿里云、华为云等服务器厂商直接购买一个云服务器。购买一个云服务器并不难如果你会使用京东、淘宝等购物软件下单买帅帅的衣服买美美的包包的话那么购买一个服务器简单得就像呼吸一样。 其中购买云服务器的时候注意一下建议选 Ubuntu 因为下面介绍都是以 Ubuntu 为例子进行讲解。 购买完之后建议修改一下密码查看当前云服务器的登录名还有就是公网 IP 。
用阿里云举个例子 首先会得到一个详情信息的服务器。 1重置密码 2登录名 如果没有修改过登录名默认就是 root 。 3公网 IP 从购买到一个云服务器之后获取到以上三个重要信息在以下步骤就会使用到这三个信息。 2.0 Xshell 和 Xftp 软件 Xshell 和 Xftp 是两款由 NetSarang 公司开发的软件主要用于网络访问和文件传输。 下载官网家庭/学校免费 - NetSarang Website (xshell.com) 直接下载即可免费使用。 2.1 Xshell 介绍 它的主要用于在 windows 平台上远程连接管理 Linux 系统用户可以通过 Xshell 连接到远程服务器执行命令、管理系统、进行系统监控等操作。
Xshell 连接云服务器的步骤 1点击新建 2先起一个好听的名字再将公网 IP 填写到主机(H)再按确认 3双击新建好的会话之后就会自动弹出来 SSH 用户名卡片的填写这里用到了连接云服务器的登录名信息。 4继续双击会话之后会弹出用户身份验证这里用到了连接云服务器的密码信息。 5最后出现了绿点和一串复杂的字符串 出现这些内容则说明已经与云服务器连接起来了。 其中这一串复杂的字符串就是你购买的云服务器的实例 ID 2.2 Xftp 介绍 这是一个文件传输工具可以将文件从本地上传到云服务器中也可以从云服务器中下载文件到本地。Xshell 提供了拖放功能、文件同步、文件传输队列等使用功能提升文件传输效率。
Xftp 连接云服务器的步骤 1点击新建 2先起一个巨好听的名字哟再将公网 IP 输入到主机(H)选择用 Password 的方式连接云服务器。 3选中点击会话再按连接 4输入连接云服务器的用户名信息 5输入连接云服务器的密码 6如果从来没用使用过该云服务器的话在 /root 目录下是不会出现以下文件的这是一个正常的情况以上文件都是我自己手动创建的 最后 Xshell 和 Xftp 都成功连接上同一个云服务器了。 3.0 在云服务器进行环境配置 将项目放到云服务器上运行那么离不开项目所依赖的环境比如说 JDK、MySQL、Nginx 等环境的安装。 3.1 安装 JDK 1切换 root 用户的指令 命令之前就不需要加 sudo 了。 sudo su2更新软件包的指令 sudo apt-get update 执行结果 3安装 openjdk 的指令 #查找 jdk 包
apt list | grep jdk#安装 jdk
apt install openjdk-17-jdk 执行结果 安装过程中需要输入确认 y 进行下一步。 4验证 jdk 是否安装成功 #查看jdk版本
java -version 执行结果 出现相对应的 jdk 的版本和安装日期的提示则说明安装成功。 5卸载 jdk 如果需要重新下载 jdk 的话先卸载原先的 jdk 以及相关的 jdk 包。 3.2 安装 MySQL 1安装 MySQL #查找安装包
apt list | grep mysql-server#安装 mysql
apt install mysql-server 执行结果 安装过程中需要输入确认 y 进行下一步。 2查看 MySQL 状态 #查看是否安装成功
systemctl status mysql 执行结果 3MySQL 安装安全设置 默认的 MySQL 设置时不安全的MySQL 安装提供了一个安全脚本用于解决不太安全的默认选项执行以下指令设置密码 mysql_secure_installation 在安装过程中会出现确认信息 4设置密码 首先连接 mysql 服务器 mysql 使用 alter user 命令修改密码 红色框中是自己需要设置的密码。 5设置完成之后再使用 mysql 时需要加上 -p mysql -p 执行结果 这里需要注意在输入密码的时候光标是不会动的而且看不到有字符的输入。 这样就成功进入到 mysql 了。 如果需要退出 mysql 的指令 exit 6卸载 Mysql #停止 mysql
systemctl stop mysql#卸载 mysql
apt-get remove --purge mysql-server mysql-client mysql-common#删除 mysql 配置文件和数据
rm -rf /etc/mysql /var/lib/mysql#清理残留文件和目录
apt-get autoremove
apt-get autoclean#验证卸载结果
mysql --version3.3 安装 Nginx Nginx 是一款功能强大、灵活且高效的 Web 服务器和反向代理解决方案广泛应用于各类网站和服务是全球最流行的 Web 服务器之一。 1安装 nginx 命令 apt install nginx 2启动 nginx 命令 nginx 3检查 nginx 是否运行 ps aux | grep nginx 4停止 nginx nginx -s stop 4.0 SpringBoot 后端代码进行打包上传服务器 将 SpringBoot 项目进行打包 1点击 clean 之后 2点击 package 之后 项目打包之后就放到红色框的路径下。 3接着将 jar 包拖到你喜欢的位置一般放在 root 目录下需要注意的是查看 jar 包的大小是否符合如果不符合就是打包出错了需要重新打包。 4启动后端服务 nohup java -jar 此处写你项目的jar包名称 nohup后台运行程序用于系统后台不断地运行命令退出终端不会影响程序的运行。
语法格式 nohup Command [Arg] [] 参数说明 Command要执行的命令。 Arg一些参数可以指定输出文件。 让命令在后台执行终端退出后命令仍旧执行。 5开放端口号 如果外网需要访问该服务需要先服务器防火墙开发对应的端口号。 手动添加或者设置访问云服务器的规则。 5.0 Vue 前端代码进行打包上传服务器 1前端项目打包指令 npm run build 执行完毕之后会出现 dist 文件 dist 文件中的内容就是需要上传到云服务器中。 同样的将这些内容复制粘贴到云服务器中放置的路径需要记住比如/var/BookView 2对 nginx 配置文件进行配置 先找到 nginx.conf 配置文件。 配置 server 块 参数讲解 listen监听的端口号 server_name表示的是监听从那个 IP 来的请求 静态文件服务/var/BookView 该目录就是前端项目包所放置的位置 反向代理proxy_pass 处理发送的请求 最后重启一下 nginx 这样项目就部署完毕了就可以在任何一个有网的地方都可以访问到你部署的项目了输入你的公网 IP 加上 nginx 配置的服务端口号。 6.0 nginx 配置文件结构 6.1 先了解以下配置文件的结构
Nginx 文件结构 全局块配置影响 nginx 全局的指令。一般有运行 nginx 服务器的用户组nginx 进程 pid 存放路径日志存放路径配置文件引入允许生成 worker process 数等。 events 块配置影响 nginx 服务器或与用户的网络连接。有每个进程的最大连接数选取哪种事件驱动模型处理连接请求是否允许同时接受多个网路连接开启多个网络连接序列化等。 http 块可以嵌套多个 server配置代理缓存日志定义等绝大多数功能和第三方模块的配置。如文件引入mime-type 定义日志自定义是否使用 sendfile 传输文件连接超时时间单连接请求数等。 server 块配置虚拟主机的相关参数一个 http 中可以有多个 server。 location 块配置请求的路由以及各种页面的处理情况。 ... # 全局块。配置影响nginx全局的指令。events { # events块。配置影响nginx服务器或与用户的网络连接。...
}http # http块。可以嵌套多个server配置代理缓存日志定义等绝大多数功能和第三方模块的配置。
{... # http全局块server # server块。配置虚拟主机的相关参数一个http中可以有多个server。 { ... # server全局块location [PATTERN] # location块。配置请求的路由以及各种页面的处理情况。{...}location [PATTERN] {...}}server{...}... # http全局块
} 6.2 nginx 主要配置 6.2.1 静态 HTTP 服务器配置 首先Nginx 是一个HTTP 服务器可以将服务器上的静态文件如 HTML、图片通过 HTTP 协议展现给客户端。 配置 server {listen 80; # 端口server_name localhost 192.168.1.100; # 域名 location / { # 代表这是项目根目录root /usr/share/nginx/www; # 虚拟目录}
} 通过访问路径带有 / 则在页面就是将 root 代理的项目展示给客户端也就是静态代理。 6.2.2 反向代理服务器配置 什么是反向代理 客户端本来可以直接通过 HTTP 协议访问某网站应用服务器如果网站管理员在中间加上一个Nginx客户端请求 NginxNginx 请求应用服务器然后将结果返回给客户端此时 Nginx 就是反向代理服务器。 反向代理配置 server {listen 80;location /api/ {proxy_pass http://192.168.0.112:8080/; # 应用服务器HTTP地址}
} 在代理过程中遇到 /api 路径就会自动代理转发请求到 proxy_pass 应用服务器中这就是反向代理。在 api 之后加上 / 和在引用服务器 HTTP 地址之后加上 / 代表会自动将 api 转换为 。 既然服务器可以直接 HTTP 访问为什么要在中间加上一个反向代理不是多此一举吗反向代理有什么作用继续往下看下面的负载均衡、虚拟主机都基于反向代理实现当然反向代理的功能也不仅仅是这些。 6.2.3 负载均衡配置 当网站访问量非常大也摊上事儿了。因为网站越来越慢一台服务器已经不够用了。于是将相同的应用部署在多台服务器上将大量用户的请求分配给多台机器处理。同时带来的好处是其中一台服务器万一挂了只要还有其他服务器正常运行就不会影响用户使用。Nginx 可以通过反向代理来实现负载均衡。 负载均衡配置 upstream myapp {server 192.168.0.111:8080; # 应用服务器1server 192.168.0.112:8080; # 应用服务器2
}
server {listen 80;location / {proxy_pass http://myweb;}
} 6.2.4 虚拟主机配置 有的网站访问量大需要负载均衡。然而并不是所有网站都如此出色有的网站由于访问量太小需要节省成本将多个网站部署在同一台服务器上。 例如将 www.aaa.com 和 www.bbb.com 两个网站部署在同一台服务器上两个域名解析到同一个 IP 地址但是用户通过两个域名却可以打开两个完全不同的网站互相不影响就像访问两个服务器一样所以叫两个虚拟主机。
虚拟主机配置 server {listen 80 default_server;server_name _;return 444; # 过滤其他域名的请求返回444状态码
}
server {listen 80;server_name www.aaa.com; # www.aaa.com域名location / {proxy_pass http://localhost:8080; # 对应端口号8080}
}
server {listen 80;server_name www.bbb.com; # www.bbb.com域名location / {proxy_pass http://localhost:8081; # 对应端口号8081}
} 在服务器 8080 和 8081 分别开了一个应用客户端通过不同的域名访问根据 server_name 可以反向代理到对应的应用服务器。 虚拟主机的原理是通过 HTTP 请求头中的 Host 是否匹配 server_name 来实现的。