博客相关

3-5

博客1.0开启,使用开源主题fluid,记录学习

9-12

进行了部分页面美化

待解决BUG:评论系统跨域问题、网站4G网络请求异常,但是不知道为啥WIFI可以正常访问。

优化问题:鼠标美化,引入第三方动画库。

11-3

改用utterances实现博客评论功能,但是需要翻墙以及登录GIthub才能评论。

1-20

服务器配置

准备手搓一个个人博客了,初步计划为mysql + node.js +express + vue2。

虽然啥都不懂,但还是起手买了个阿里云ECS,注册-10,30块,蛮便宜哈?不知道买对没有。

image-20220120202654669 image-20220120202903304 image-20220120202927192 image-20220120203022521

配置一下,不然没法访问,还有就是去控制台设置一下密码,这个去百度,很简单,还有就是要学会用ssh工具,虽然windows自带的也可以用,未为了方便向服务器上传资源,所以最好自己准备好xshell或者是mobaxterm(智慧视觉课学的,连的是华为软件定义摄像机,和连服务器差不多其实,只不过一个是在路由器组成的局域网里,一个是在公网上)方便一点功能也强大一些。

我的xshell不知道怎么要收费了,那就用之前的mobaxterm吧。

image-20220120204000283 image-20220120204024321

这就算连接好了,就跟你在linux或者虚拟机里一样。

下面使用SFTP上传文件,百度了一下:

SFTP协议能够进行“远程文件获取,文件内容传输,文件管理”等操作,它的控制信号和数据信号的传输通过安全数据通道进行。一般情况下,这个安全数据通道由SSH连接提供,即SSH连接隧道作为安全数据通道。跟只能进行简单文件内容传输的SCP协议相比,SFTP协议更像是一个远程文件系统协议。 SFTP协议工作于OSI七层体系的应用层。
image-20220120204637400

mysql

image-20220120212711425

点击download,然后把.tar包通过sftp连接上传。

解压:

1
tar -xvf mysql-server_5.7.32-1ubuntu18.04_i386.deb-bundle.tar

顺序很重要,错了就寄,有依赖没装的error就手动装一下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
sudo dpkg -i mysql-common_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-community-client-plugins_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i libmysqlclient21_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i libmysqlclient-dev_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-community-client-core_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-community-client_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-client_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-community-server-core_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-community-server-debug_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-community-test_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-community-test-debug_8.0.25-1ubuntu20.04_amd64.deb

sudo dpkg -i mysql-community-server_8.0.25-1ubuntu20.04_amd64.deb


sudo dpkg -i mysql-server_8.0.25-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-testsuite_8.0.25-1ubuntu20.04_amd64.deb
image-20220120220843800

登录:

1
2
mysql -u root -p
z*************.

设置:

1
2
3
4
5
6
root@iZwz9aigwydqp5jkhk5pwoZ:/etc/mysql/mysql.conf.d# vi mysqld.cnf

ps aux|grep mysql
skip-grant-tables
select user,host,authentication_string from mysql.user;
update user set authentication_string=password("123456") where user="root";
image-20220121035615471

不知道怎么,在密码登不上,卡了一晚上,我服了,skip-grant-table后设置了密码也没用,搜了各种设置方法都没用。

(72条消息) UBUtu 20.04 + MYSQL8.0 数据库连接不上 终极解决办法_Mr_huang的博客-CSDN博客

day2:最后解决了,就是前面有个博客坑了我,把plugin全置空了,看上面的博客设成mysql_native_password即可。

回顾

1
2
3
4
5
6
7
8
# 查看当前所有数据库
show databases;
# 打开指定库
use 库名;
# 查看当前库所有表
show tables;
# 查看其他库所有表
show tables from 库名;

3-16

果然我是蓝狗,根本没做,哈哈哈,那就先让这个服务器跑一个小型demo吧,其实也不算小了,登录注册注销评论个人信息的展示,大概就是这些。

首先vue项目使用npm run build进行webpack打包,把打包的dist文件夹放到node项目下,最后去除node_modules压缩。

有点卡,试试cnpm run build

img

服务器安装node

1
2
3
4
5
6
7
8
9
10
11
12
13
wget https://npm.taobao.org/mirrors/node/v14.13.1/node-v14.13.1-linux-x64.tar.xz

xz -d node-v14.13.1-linux-x64.tar.xz

tar xvf node-v14.13.1-linux-x64.tar

/lib/node-v14.13.1-linux-x64/bin

先备份 cp /etc/profile /etc/profile.bak
然后修改 vim /etc/profile
在最下面添加 export PATH=$PATH: 后面跟上node下bin目录的路径

node -v

服务器上使用 node 命令启动项目时,如果我们退出 shell时,进程就会关闭,无法再访问到项目。因此,为了解决这个问题需要用到pm2。pm2 是一个带有负载均衡功能的Node应用的进程管理器,可以保证进程永远都活着,0秒的重载。

使用pm2

1
2
3
4
5
6
7
8
9
// 以防万一太卡
npm install -g cnpm -registry=https://registry.npm.taobao.org

npm install -g pm2 全局安装

pm2 stop npm 停止程序
pm2 delete npm 删除程序
pm2 start npm -- run serve 运行程序
pm2 list 列举出所有用pm2启动的程序

好像不用pm2也行,额,主要是配置半天看不懂

使用sftp连接上传文件、解压

1
2
3
cp /tmp/myapp.zip /usr/local/src/

unzip -d ./myapp myapp.zip

到云服务器管理平台开放9000端口

Linux 查看端口占用并结束进程

1
2
fuser -v -n tcp 80 
kill j

后端:node + express + mysql +jwt

前端:vue2.0全家桶 + iView

服务器:

阿里云ECS 1核2G

pm2守护进程

主页

测试账号:admin

密码:123456