# 一、解析域名到服务器
将前面我们购买的域名,解析到当前的服务器上。
在解析之前,我们需要了解以下几个概念:
①顶级域名、一级域名、二级域名、三级域名是什么
顶级域名
顶级域名是指域名中最右边的部分,通常是一个国家代码(如.cn代表中国,.us代表美国)或通用域名(如.com、.net、.org)。顶级域名是域名结构中的最高级别。
如baidu.com,51yrc.com,其中.com就是顶级域名,就是我们常说的域名后缀。一级域名
我们现在常说的一级域名指的是主域名,比如:baidu.com有一个以.分隔的后缀,就是一个一级域名,51yrc.com也是以.分隔的后缀,也是一个一级域名,也叫主域名。二级域名
二级域名就是寄存在主域名之下的域名,是主域名往左一级的域名。一般来说,二级域名就是类似 3个w(www)这样的格式,例如:www.baidu.com有两个以.分隔的后缀,就是一个二级域名。
在比如:www.51yrc.com也是以两个.分隔的后缀,也是一个二级域名。在比如说:docs.51yrc.com、5.51yrc.com、mmm.51yrc.com、m5.51yrc.com、05.51yrc.com等等,都在主域名51yrc.com左侧延伸出一级,整个域名有两个.分隔的后缀,都可称之为二级域名。只是大家习惯于www开头的域名,其实这些域名都是二级域名。三级域名
顾名思义,三级域名就是有三级(3个.)的域名格式。可以当做是二级域名的子域名。
例如:www.m.baidu.com有 3 个以.分隔的后缀,就是一个三级域名。在比如:05.docs.51yrc.com,docs.05.51yrc.com,www.05.51yrc.com,lesson.05.51yrc.com等等称之为三级域名。
从网站优化的角度讲,通常主域名(一级域名)的权重最高,二级域名次之,大型网站,如果各自的内容差别较大,可以使用二级域名,在网站建设中应该根据实际情况选择使用。
② 域名解析说明
1、 强烈建议大家在同一家供应商购买域名和服务器,要么统一在阿里云购买,要么统一在腾讯云购买,这样解析域名非常方便;
2、 如果域名在阿里云购买,服务器又在腾讯云那里,分多种情况,如果是国内服务器,则需要备案、域名迁入等等申请,如果是国外的服务器,则需要进行域名DNS解析,至于能不能通过,则看供应商那边的情况,总之非常麻烦,所以强烈建议大家在同一家供应商购买域名和服务器;
解析域名实际操作,请看课程视频。
# 二、创建网站
在宝塔面板创建网站:(具体查看课程视频)
- 网站 -> PHP项目 -> 添加站点 -> 传统项目
- 域名(
上节课解析的域名)- 根目录(默认按域名生成一个根目录)
- 数据库:MySQL - utf8mb4
- 数据库账号、密码自动生成
- PHP版本: 纯静态
记得用记事本记录以上信息保存!!
# 三、打包代码上传到服务器并解压
1、同学们可以将上个季度(第三季)课程最终代码进行打包(去掉node_modules文件夹);
2、也可以直接下载本节课的课件,课件里面有打包好的代码;
# 四、安装node环境、切换node版本
# 1. 安装PM2管理器
在软件商店安装PM2管理器(Node.js版本管理器也可以,二选一);
# 2. 切换node版本
切换node版本到最新版(至少要高于开发项目时候的版本)(关于node的知识,我们在第二学期第二季度详解讲解,如果对node不熟悉,可以回去看一下我们第二学期第二季度课程)
# 五、打开命令行,切换到根目录下
打开服务器远程连接,输入命令,如:
cd /www/wwwroot/lesson05.51yrc.com
# 六、初始化项目依赖
# ① 安装依赖 npm install
我们知道安装依赖包,需要找到npm镜像源:
- 如果你是国内服务器,我们会使用淘宝镜像源
npm config set registry https://registry.npmmirror.com/- 如果是中国香港或者国外服务器,则不用切换镜像源,因为它本身就很快,由于目前我们服务器是新加坡,所以不必切换 直接执行:
npm install安装依赖包
# 七、修改配置
# ① config/config.default.js
修改数据库连接配置:数据库名称database,数据库用户名username,数据库密码password
# ② database/config.json
数据库相关信息,建议全部改一下
# 八、安装数据库迁移工具,执行迁移命令
# ① 安装数据库迁移工具
执行命名:npm install --save-dev sequelize-cli
安装出错,如:
npm ERR! code E404
npm ERR! 404 Not Found - GET https://cdn.npmmirror.com/binaries/npm/sequelize-cli
npm ERR! 404
npm ERR! 404 'sequelize-cli@^6.6.2' is not in this registry.
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2024-11-16T10_20_20_457Z-debug-0.log
[root@iZt4nbvihwm43pq6u56bwiZ lesson05.51yrc.com]# exit
意思是:
sequelize-cli 包在指定的注册表中未找到。这可能是由于以下几种原因:
1、注册表配置问题:你当前使用的 npm 注册表可能不包含 sequelize-cli 包。
2、包名称或版本问题:sequelize-cli 的名称或版本可能有误。
解决办法:
1、检查 npm 注册表配置: 确认你当前使用的 npm 注册表是否正确。你可以通过以下命令查看当前的注册表配置
npm config get registry
//如果注册表不是默认的 https://registry.npmjs.org,你可以将其切换回默认值:
2、切换回默认值
npm config set registry https://registry.npmjs.org
3、重新安装 sequelize-cli:
npm install --save-dev sequelize-cli
# ② 执行迁移命令 npx sequelize db:migrate
执行迁移命令: npx sequelize db:migrate
附:
// 升级数据库-创建数据表
npx sequelize db:migrate
// 如果有问题需要回滚,可以通过 `db:migrate:undo` 回退一个变更
npx sequelize db:migrate:undo
// 可以通过 `db:migrate:undo:all` 回退到初始状态
npx sequelize db:migrate:undo:all
# 九、启动项目 npm start
执行命令:npm start
# 十、创建反向代理
对应的网站 -> 设置 -> 反向代理 -> 添加反向代理:
代理名称:api
目标URL:http://localhost:7001
发送域名 :localhost
注:
运行后发现出错,修改两处:
- 白名单加上域名;
- 中间件
app/middleware/admin_menu.js加上判断 - 如果服务器有多个项目,7001端口被占用,则在 package.json 文件加上:
//加上别的端口号
"scripts": {
"start": "egg-scripts start --daemon --title=egg-server-mssql --sticky --port=7002",
...
},
# 【第二学期第4季课程】其它章节
# 章节1.课程介绍
# 章节2.购买域名及备案
# 一、购买域名
# 1. 登录供应商官网(阿里云为例)
# 2. 选购域名
# 二、ICP备案(域名备案)【选修】
# 章节3.购买服务器
# 一、服务器选购
# 二、服务器环境搭建
# ① 服务器设置
# ② 服务器环境搭建
# ③ 可视化面板设置
# 章节4.网站代码上线调试
# 一、解析域名到服务器
# 二、创建网站
# 三、打包代码上传到服务器并解压
# 四、安装node环境、切换node版本
# 1. 安装PM2管理器
# 2. 切换node版本
# 五、打开命令行,切换到根目录下
# 六、初始化项目依赖
# ① 安装依赖 npm install
# 七、修改配置
# ① config/config.default.js
# ② database/config.json
# 八、安装数据库迁移工具,执行迁移命令
# ① 安装数据库迁移工具
# ② 执行迁移命令 npx sequelize db:migrate
# 九、启动项目 npm start
# 十、创建反向代理
# 章节5.SSL证书
# 一、申请SSL证书
# 二、搭建https协议网站
# 其它学期课程
# 第一学期(学习顺序:01)
第一学期课程专为零基础的学员定制录制的,纯html+css做企业网站的网页,主讲html和css的相关基础知识,flex布局相关知识,封装css基础样式库,引入字体图标及网页开发基础布局思维,完成企业网站网页的开发过程。
[第一学期学习视频]
# 第二学期【第1季】(学习顺序:02)
# 第二学期【第2季】(学习顺序:03)
JavaScript中的面向对象,类,ajax,封装js库过渡到jQuery, vue.js基础配置网站页面,建议所有学员观看。
[第2季学习文档] [第2季学习视频]
# 第二学期【第3季】(学习顺序:04)
egg.js基础,响应式网页布局,Bootstrap框架,响应式后台系统管理,完整企业网站前后台开发,建议所有学员观看。
[第3季学习文档] [第3季学习视频]
# 第二学期【第4季】(学习顺序:05)
主要对第三季,同学们开发的企业网站,进行一个完整的上线运维流程的一个讲解,同学们将网站开发完成之后,如何进行上线运维,将项目交付给客户。
[第4季学习文档] [第4季学习视频]