使用腾讯云服务器从零搭建个人网站

news/2024/11/29 13:39:13/

前期准备工作

1.服务器重装系统

选择ubuntu18的系统镜像

请添加图片描述

2.开放端口

需要开放80,27017,3000,22端口

  • 80端口用于配置nginx服务
  • 27017端口用于连接mongondb数据库
  • 3000端口是启动项目的端口
  • 22端口用于ssh远程连接服务器,一般默认会开启

请添加图片描述

3.域名解析

添加解析记录,这里的记录值为服务器的公网IP

请添加图片描述

连接服务器

1.一键远程登录服务器

请添加图片描述

2.修改配置文件

为了拥有最高权限,方便操作,我们使用root用户连接。

但是Ubuntu实例默认禁用root用户通过密码SSH远程登录,如需开启,需要手动配置文件。

# 设置 root 密码,返回passwd: password updated successfully则设置成功
sudo passwd root
# 打开 sshd_config 配置文件
sudo vi /etc/ssh/sshd_config
# 在末尾添加以下两行代码
PermitRootLogin yes
PasswordAuthentication yes

3.使用xShell远程连接服务器

注意:首次通过本地远程登录软件登录 Linux 实例之前,需要重置root 用户
的密码

请添加图片描述

选择用密码登录

请添加图片描述

登陆成功

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4cLoOBE2-1687183487213)(%E4%BB%8E%E9%9B%B6%E6%90%AD%E5%BB%BA%E4%BA%91%E6%9C%8D%E5%8A%A1%E5%99%A8%203fb71f6a93774b11ad2e04a4ee14e67d/7.png)]

安装和配置软件,并启动项目

1.安装软件

# 更新下载源
apt update
# 安装 nginx
apt install nginx -y# 安装 mongodb 数据库
apt install mongodb-server -y# 安装 git
apt install -y git
# 生成ssh秘钥,一路回车即可
ssh-keygen
# 查看ssh秘钥
cat /root/.ssh/id_rsa.pub# 安装node.js
apt install -y nodejs
# 安装npm 
apt install -y npm
# 设置淘宝镜像源,加快下载速度
npm config set registry https://registry.npm.taobao.org
# 安装软件包n,方便切换node版本
npm i -g n
# 使用版本为12.6.0的node
n 12.6.0
# 安装pm2包,用于后台启动端口(报错则重新连接终端)
npm i -g pm2

2.向gitee提交最新代码

请添加图片描述

3.把ssh-keygen生成的秘钥添加为项目的公钥

请添加图片描述

4.拉取代码,启动项目

# 进入/var/www/html目录中并创建data目录
cd /var/www/html && mkdir data
# 进入data目录,并使用ssh链接克隆代码
cd data && git clone git@gitee.com:liu-guanghui233/king-glory.git
# 进入项目的文件夹,下载依赖
npm i
# 使用pm2启动项目
pm2 start index.js

请添加图片描述

5.网页查看项目

这是nginx的默认页面,并不是我们项目的页面,还需要配置nginx的反向代理才能显示

请添加图片描述

配置 Nginx 的反向代理

1.获取配置文件

进入nginx配置网站:https://www.digitalocean.com/community/tools/nginx

选择nodejs,站点就填网站的域名,HTTPS,PHP,Python,路由设置,日志记录不启用,但需要启动反向代理,选项配置好就可以下载配置

请添加图片描述

2.修改nginx的配置文件

直接使用Xftp传输和修改文件,超级方便

删除/etc/nginx目录下原有的sites-enabled,sites-available文件夹和nginx.conf文件,然后将左侧除了nginxconfig.txt所有文件传输过去

请添加图片描述

3.重新启动

# 查看nginx是否配置成功,如果报错,则修改错误
nginx -t
# 重新加载nginx的配置文件
service nginx reload
# 重启项目
pm2 restart index.js

此时可以用浏览器访问到项目了!但是后台数据无法显示,因为我们还没将本地数据迁移到服务器中

请添加图片描述

配置mongodb数据库

1.导出数据库

# 进入本地项目的根目录中,使用命令导出数据库
mongodump -d 数据库名

项目的根目录下就会多出一个文件夹dump,里面就是我们所需要的数据
请添加图片描述

2.更新数据库数据

# 将dump文件夹复制到服务器的/root目录下,然后恢复数据
mongorestore

这时后台就有数据了

3.navicat远程连接服务器的数据库

如果需要修改数据库中的数据,可以使用ssh远程连接,操作更简单

请添加图片描述

连接成功!

请添加图片描述

扩展:定时执行脚本

1.将需要执行的脚本拷贝到服务器中

2.给文件添加执行权限

chmod 775 脚本文件名

3.测试

# 直接使用node运行脚本
# 如果在本地跑没问题,在服务器跑报错了,多半是node的版本问题;可切换版本解决问题
node index.js

4.添加定时执行脚本的文件

可在线生成配置文件:Crontab Generator - Generate crontab syntax (crontab-generator.org)

# 打开文件
crontab -e
# 修改文件内容(第一个是node的路径,第二个是脚本文件的路径。)
# 查看node路径的方法:which node
# ctrl+x退出,输入y回车保存并退出
0 8 * * * /usr/local/bin/node /var/www/html/data/weather-forecast/index.js
# 上面的意思是设置每天8点整执行脚本
# 查看当前用户设置的定时执行文件
crontab -l

5.重启

service cron restart


http://www.ppmy.cn/news/473669.html

相关文章

笔记本方向键和HOME END 键是 同一个按钮,怎么使用?

Home:fn ← End:fn → PgUp:fn ↑ PgDn:fn ↓

Swing mouseDragged事件判断鼠标是哪个键的方法

问题背景 在使用mouseDragged处理拖动事件时,如果还想限定是鼠标哪个键,一般会想到以下方法 topBox.addMouseMotionListener(new MouseMotionAdapter() {Overridepublic void mouseDragged(MouseEvent e) {if (e.getButton() ! MouseEvent.BUTTON1) re…

计算机键盘换挡键,电脑键盘上的换挡键是哪个

Esc:退出键。英文Escape 的缩写,中文意思是逃脱、出口等。在电脑的应用中主要的作用是退出某个程序。例如,我们在玩游戏的时候想退出来,就按一下这个键。 Tab:表格键。可能大家比较少用这一个键。它是Table的缩写&…

计算机方向键是哪个键,left键是哪个键

left键是哪个键 熟悉电脑键盘的朋友肯定都知道键盘上的left键在什么位置,但是对于那些并不是很熟悉电脑的朋友们来说,left键仍然是非常陌生的。那么left键到底在什么位置呢?下面jy135小编来告诉大家吧! Left键的位置 键盘上的按键上面确实没有一个是“l…

不同电脑进入bios按键汇总

笔记本电脑 主演按键:Delete, ESC, F1, F2, F10 品牌笔记本电脑 ibm/thinkpad(冷开机按f1,部分新型号可以在重新启动时启动按f1,少数机型是FnF1或F2) 惠普hp(启动和重新启动时按f2或者F10,或…

电脑键盘上一些不常用的键介绍:F1 - F12,sysrq键,Scroll Lock键,pausebreak键

F1:若处于一个选定的程序中需要帮助时,按下F1获得帮助。若不是处于程序中,处于资源管理器或者桌面,按下F1会显示出Windows界面的帮助程序。 F2:若选中一个文件或文件夹在资源管理器中,按下F2则会对这个选定…

台式计算机上的fn键是哪个,笔记本上fn是哪个键fn键功能详解【方法详解】

最近有朋友问了小编fn是哪个键?其实这个很简单的,并且fn键还牵扯到许多的便捷功能,下面小编就来教教大家fn是哪个键,又应该如何使用fn键。 一、哪个是fn键 fn键很好找它就在笔记本键盘左下角ctrl键的右边,windows键的左边。单按f…

联想服务器重装系统按什么键,联想重装系统按哪个键

大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答。 联想重装BIOS系统需在开机时,按下delete键,具体的步骤是: 1、先安装并运行大白菜软件,在主界面中提示插入要制作的U盘。 2、其它选项…