网站实现云服务器部署

1、理论基础

本文以应用为主,不做过多介绍。

2、部署实操

2.1、准备工作

购买服务器,这一步需要创建好服务器实例,分配好服务器实例。
租用域名,注册好域名之后需要将域名映射到自己服务器对应的 IP地址,这样别人才能通过域名访问到我们的服务器。这个步骤叫做域名解析(配置DNS),通过域名服务商提供的后台就可以操作,一般域名解析都会有延迟,不是即时生效的。
检测域名解析,可以使用ping 域名命令进行测验。

2.2、服务器环境搭建

2.2.1、客户端链接工具推荐git bash

2.2.2、常用的Linux系统操作命令

# 远程连接命令
ssh root@域名

# 展示当前文件夹路径
pwd

# 切换文件夹目录
cd 目录路径

# 展示当前文件夹中内容
ls

# 编辑文件
vim 文件路径

# 传输文件 
scp 本地文件路径 root@域名:远程路径

# 解压文件命令
unzip 

# 创建目录
mkdir

2.2.3、安装CentOS开发人员相关包

yum groupinstall 'Development tools'

2.2.4、安装Nginx

# 添加Nginx源
sudo yum install epel-release

# 安装Nginx
sudo yum install nginx

# 启动Nginx
nginx

# 开启服务
systemctl start firewalld.service
 
# 设置开机启动
systemctl enable firewalld.service
 
# 查看防火墙状态
systemctl status firewalld

# 配置防火墙规则
sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

2.2.5、安装node.js

# yum自带源中没有Node.js,所以首先要获取Node.js资源:
curl --silent --location https://rpm.nodesource.com/setup_14.x | bash -

# 安装 Node.js
yum install -y nodejs

# 安装完成之后使用如下指令测试安装是否成功
node -v

# 安装pm2 node.js程序管理工具
npm i pm2 -g

# 使用pm2 启动node.js项目
pm2 start 文件名

# 停止
pm2 stop 文件名或者id

# 从pm2的管理列表中删除
pm2 delete 文件名或者id

2.2.6、安装MySQL

# 下载并安装 MySQL 源
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
sudo yum localinstall mysql80-community-release-el7-3.noarch.rpm

# 安装 MySQL
sudo yum install mysql-community-server -y

# 如果上一步报错 执行下面的语句 之后 再次执行一下上面的安装Mysql的语句
sudo yum module disable mysql
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023

# 启动MySQL
systemctl start mysqld.service

# 找到默认密码
# MySQL安装完毕之后会自动设置一个默认密码,我们需要找到默认密码
grep 'temporary password' /var/log/mysqld.log

# 连接到MySQL数据库,修改密码
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'xxxxxx';

2.2.7、上传网站资源

# 上传文件
scp 本地文件 root@域名:远程路径

# 在服务器创建文件夹
mkdir /home/nginx/

# 把网页文件移动到创建好的文件夹里
mv ./dist.zip /home/nginx/

# 解压压缩文件
cd /home/ningx
unzip ./dist.zip

# 修改文件夹名字
mv dist xxx

2.2.8、配置nginx

# 进入配置文件目录
cd /etc/nginx

# 打开配置文件
vim nginx.conf

# 按i键进出插入模式

# 按一下esc退出编辑模式

# 然后输入:wq下面的内容敲回车
worker_processes 1;
events {
    worker_connections 1024;
}
http {
    include mime.types;
    default_type application/octet-stream;
    sendfile on;
    keepalive_timeout 65;
    server {
        listen 80;
        server_name localhost;
        location / {
            root xxx;
            index index.html index.htm;
        }
        location ^~/api/ {
            proxy_pass http://127.0.0.1:xxxx;
        }
        location /xxx {
            root xxxxx;
            index index.html index.htm;
        }
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
            root html;
        }
    }
}

需要注意,资源路径为:root后的路径拼接location后的路径
proxy_pass后面的端口号为后端监听的端口号

2.2.9、后端部署

上传项目压缩文件到服务器,在服务器上解压项目文件到/home/nginx/xxx,为项目安装依赖npm i,创建新的数据库create database xxx;,并启动项目。在之前的nginx配置文件中添加反向代理的配置。最后,使用nginx -s reload重启nginx。

2.3、常见问题

https://blog.csdn.net/mao_mao37/article/details/129791975
https://blog.csdn.net/m0_62617719/article/details/132893966
https://blog.csdn.net/hhdhz/article/details/85334127
https://blog.csdn.net/qq_43788878/article/details/128233209

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值