配置环境

Windows

我们选择现代化的开源编辑器 Vscode 来进行学习 C 和 C++。
为什么不选用 Dev C++ 或 Visual Studio(注意,这与我们使用的 Visual Studio Code 不是一个软件)甚至 Clion 呢。首先我只用过 Vscode 。其次我认为这些编辑器和 IDE 都只是工具,用来帮助我们学习编写代码。在工具上我们不应花费大量时间去争辩孰优孰劣,尤其是在我们还处于照抄书本上和老师教的代码的阶段。最适合你的就是最好的,如果有一天你的代码水平达到某一个高度,你自然会去选择你想要的工具。

0. 安装 gcc 和 g++

为什么要安装这个?请打开你的书本
~~点击这个链接,下载点开在线安装。

1.添加环境变量

搜索 Path 点第一个进去
按照图中顺序点击,最后一步的路径为你刚刚安装的链接。
如果你还是看不懂可以参考这个链接

2.安装 Vscode

进入官网Vscode 下载安装。

2.1安装中文插件

点击左侧框,搜索chinese,安装中文,再在右下角弹出框中点击重载

2.2安装其他插件

参考安装中文插件的方法安装剩余两个插件。

调整代码风格:
ctrl + shift + p>>Open user Settings>Clang_format_style

1
{ BasedOnStyle: Google, IndentWidth: 4 }
2.2.1Code Runner 插件的设置

对 Code Runner 插件进行一点设置。

把这三个框勾选上,并保存。

一点感慨

写完才发现有官方文档。https://code.visualstudio.com/docs/languages/cpp
如看不懂就看看知乎吧 https://zhuanlan.zhihu.com/p/87864677

Mac os

0.安装 Brew

终端中输入
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
第一步就卡住了?请参考这个链接

1.通过 Brew 安装 Vscode

brew install vscode
其实你自己从官网下载也可以,不过我已经习惯用 brew 了。

2.配置 vscode

与 Windows 相同,可以直接参考上文。

3.Special Setting For M1 Mac To Debug

如果你使用的是 m1 芯片的 Mac,发现无法调试程序,报错为Unable to start debugging. Unexpected LLDB output from command "-exec-run".
请安装 vadimcn.vscode-lldb 插件进行调试,再在你的工作区中/.vscode/launch.json 的”configurations”>”type”,改为”lldb”.。更加详细设置,请访问 https://github.com/vadimcn/vscode-lldb/blob/v1.6.1/MANUAL.md

参考链接: 1.http://www.sefidian.com/2020/05/09/installing-g-c-compiler-on-windows/ 2.https://github.com/microsoft/vscode-cpptools/issues/6779#issuecomment-854675319

介绍

驾驶员考试 (机动车驾驶员考试)是由公安局车管所举办的资格考试,只有通过驾驶员考试才能取得驾照,才能合法的驾驶机动车辆。

申请机动车驾驶证的人员须通过以下4个科目的考试:道路交通安全法律、法规与相关知识考试科目(科目一),场地驾驶技能考试科目(科目二)、道路驾驶技能考试科目(科目三)和安全文明驾驶相关知识(科目四)。考试顺序按照科目一、科目二、科目三、科目三理论(即科目四,官方没有科目四说法)依次进行,前一科目考试合格后,才准许参加后一科目的考试。^1

C1 与 C2 的选择

考试流程和简单介绍

TimeLine

6.15 报名

6.24 科目一一次过

刷学时 200分钟 并且等七天才能约考科目二

7.10 科目二一次过

当天晚上把学时刷完

考完科目二要等30天并且刷满 450分钟 120公里 学时和里程才能约考科目三

8.21 科目三第一次的第二次机会过

驾考中每一次在手机12123中预约考试,在考试时都有两次机会,第一把挂科立马能考第二次。
我第一次出发没打左转向灯,直接挂科。立马重考最后还是过了!
如果第二次还挂科就得等待7天后再次预约考试了。
如果科目二三约考5次(也就是5x2=10次机会,全部挂科,那就得重新报名,全部重来
不过不用担心,我所在驾校教了几万人,就两三个人挂5次的。
还有一点需要提醒,在你报名驾校后的3年内,务必完成所有考试项目,否则得重新报名

考完科目三,下车签完名字就能约考科目四

8.30 科目四(实际上是科目三的一部分

科目四,又称科目四理论考试、驾驶员理论考试,是机动车驾驶证考核的一部分。公安部123号令实施后,科目三考试分为两项内容,除了路考,增加了安全文明驾驶考试,俗称“科目四”,考量“车德”。因为这个考试在科目三之后进行,所以大家都习惯称之为科目四考试。实际的官方说法中没有科目四一说。^1

报名

到樟树林校区,交钱(2980元学费)报名。
在自助机上体检并打印照片(50元
再拿照片办理练车证(10元可退,也可以在科目二练习之前办
下载APP,看视频打卡科目一和科目四(30元

科目一

科目一是没有教练的,自己看视频打卡后刷题约考。

视频打卡随时要求人脸验证,没有时间规律,务必记得手机放在旁边,上厕所都要带着,随时关注动态准备刷脸。如果在规定时间内没刷到,算无效学时,你就白学了,考完科目四还有回来补才能拿证!

刷题,我使用的是驾考宝典,也非常推荐买个科目一科目四的vip(好像是35元),加快效率,它有很多种刷题方式(精选500易错题,顺序刷,乱序刷,只刷错题,只刷自己收藏的题),答案的解析也完备,讨论区的存在也方便我们更好的了解。

在驾考宝典的题库中总共是20xx道题,题库一直在变多更新,考试时的100题绝大部分都原题,只有几个不在其中。建议先刷精选500题,再乱序刷一遍,每天再模拟考试一次,考前两天多模拟几次,我连续十一次都是90分后(90分以上成绩合格)以上去考试顺利通过。

考试当天,由于我很急着报考,不在我报名的白云驾校考的科目一,而是人才驾校的考点。都是机器考试,差别不大,都是排队,等叫号,8点到排队到考点10点多才开始考,赶时间的同学务必早起。

科目二

在白云驾校樟树林校区练习的,科目二难度较高,主要是背下点位和操作方法,为了方便记忆我手写了一份考试前多看看最后满分通过(80分及格,分享出来以供大家参考。
请务必注意,这篇文章写于 2021年暑假,作者在白云驾校樟树林校区伍教练指导下练习科目二,不同驾校不同驾校不同教练之间的练习方法有很大差异,请遵师嘱。
友情提醒:千万别购买使用驾考宝典中3D模拟练车服务,软件内的所述和教练教的差别很大,容易误导自己。同样科目三也不需要花冤枉钱。

#侧方位停车

箭头左边一点点超过 停车

往前开肩膀白线停车

右打一圈 倒档

低下头看轮胎侧面车身123黄黑交接点对准回正

看地上轮胎 刚好压倒白线边缘左打死

看耳朵到白线边缘回正

左转向灯数123 3s后挂1档

看左突点压倒中心线

看车头压到中心线右一圈

左凸点对准箭头尾巴回正

眼镜看右边后视镜倒车

调整方向盘90两根白线

到灭火器边上停车

#倒车入库

前盖左凸点对准前一个砖头

肩膀遇到1号断线停车

右90 倒车

轮胎底部压生命线 右打死

后视镜看到车位小三角尖尖 回半圈

后视镜刚看到砖头回正

看后视镜 左右90调整车身 直到平行左右线 目标两根白线

肩膀到中线停车

伸头看两个白线

如果刚好直接往前开

如果左边少了 右90 3s 回正再

如果右边少了 左90 3s 回正再

防止压线

往前开肩膀左边白线左1+90屁股压线停车

手别动 挂倒档

后视镜看到车位尖角左+45(不是打死)

肩膀左边线停车

直行肩膀左边中线右1+90

车身正了回正

倒车直到车与两白线平行

开始下一轮练习

#曲线行驶

左凸点对准灭火器

左凸点对准变现 左打一圈

左凸点对准墙中间加45

对准第二个灭火器回正

左凸点对准外侧台阶 右90

超过右加45 如果又看到外侧台阶减45(没看到不减)

走出回正

进入直角转弯拐弯处,摆正左打死!

#上坡定点

离合慢慢放 速度慢 和平地开一样

左凸点对准黑线

右边门把手刚过螺丝踩死刹车

刹车踩死不动 离合与上坡时不动(动了就会溜车)

停下来3s 感受震动 慢慢放 剧烈振动后

迅速匀速松刹车 离合别动

开下去

#直角转弯

提前左打死,车头要正!

左手按住左转向 对准蓝色一直开

蓝色 左打死 关左转向

考前一天会通知你去看考场在考场练车,考场有出售考试车练车的服务(150元一圈),没必要,用教练车在考场来训练完全没差别。
建议每次练车休息时在后排多观察,有必要写下像上文一般的文字以供自己复习,考前看一看帮助很大,可以很好的克服紧张的心理,祝你成功!

科目三

恭喜你通过了颇为困难的科目二训练,科目三不再需要记住很多很多点位,按照严格的程序控制汽车,仿佛一个木偶(?。但是科目三是90分及格,有别于科目二的80分,所以细节很重要。

科目三的训练都是在车上开,一般情况是以三挡20码的速度在路上跑,在做其中的一个考试项目加减档位时,会跑到50-60码,不要慌。

同样我把我用于记忆的文字分享出来。

近光灯

(1)(窄路)夜间与机动车会车

(2)夜间在照明良好的道路行驶

(3)夜间同方向跟车行驶

(4)夜间直行通过路口
远近光交替

(5)夜间通过坡路、拱桥、急弯、人行横道线

(6)夜间超越前方车辆

(7)夜间通过没有交通信号灯控制的路口
远光灯

(8)夜间在没有路灯照明不良的条件下行驶

用左手关成小灯,左手不能离开大灯开关

(9)路边临时停车

为什么只有灯光呢,因为实在是简单,但要注意细节,比如上车后检查后视镜,出发时要打左转向灯。我就因为出发没打左转向灯挂科一次,还要在同一场考试的第二次机会顺利通过!

科目四

和科目一雷同,但是科目四是在15xx题中挑50题考试,一题两分,90分及格,考完签字后宣誓。
最后等待驾校电话去拿证吧!
由于南昌是电子驾驶证的试点区域,12123app中可以直接申请电子驾驶证,即使你没拿到纸质证件。
唯一一点需要注意的是要在12123App中把考试费和工本费交清。

费用总计

2980报名费+50体检费+30科目一四视频打卡费+42科目一报考费+174科目二报考费+244科目三报考费+10驾驶证制作工本费=3530元

四个科目都是一次过,不清楚补考费等,期间没有向教练安全员递钱送烟的行为,更别说一些小驾校专属的打卡费,换教练费。如果你能看到这里,可以在下方评论区留言你的微信号报名白云驾校,可以享受除驾校活动外的专属优惠,还可享受专属优惠,比你主动报名或者联系教练便宜(没有中间商赚差价。本站开启了评论审核并保护您的隐私,你的个人信息绝不会出现在下方。

如何查分

虽然驾考宝典等APP有查分的功能,但是为了保护个人隐私,不把身份证姓名电话这种敏感信息留给第三方平台,被营销诈骗电话围攻,强烈建议自行电脑端登陆12123官网进行查询!

企业微信的注册

注册企业微信十分简单,你只需要一个手机号。即使您不上传您的企业信息,或者您和我一样根本没有企业,本文的所有操作都可以顺利完成,只是在人员有所限制。

域名邮箱

进入企业微信管理后台绑定你的域名,我的域名在中国大陆已经备案,可以正常收发国内外(特指Gmail)邮箱,未知未备案域名是否能够顺利注册。

你可以在企业微信管理后台给你的用户增加别名。

消息推送服务

在国内实现低成本的高到达率文字消息推送似乎很困难,企业微信的自建应用在个人微信中可以直接打开,所收到的消息也是文字消息,与正常聊天无异。例子请看这里

0.创建应用

企业微信管理后台创建你的应用,Logo 名称都可以随意填写,后期可以更改。

1.获取密钥

你需要获取企业微信ID(一般为ww开头)。

你还需要获取所创建的应用的AgentId(一般为10000x)和Secret(手机下载企业微信才可以获取)。

2.部署于服务器上或腾讯云SCF云函数上

两者区别在于一个需要服务器支持,一个不需要。我的服务器闲着也是闲着,就使用了服务器版本,并且稍作修改。

服务器构建请参考我修改的这个Fork,相对于原版去除了默认推送全体成员的行为。你只需要下载Releases并解压,修改参数,启动服务,再按需开启反向代理。

使用教程

  1. 下载Releases并解压
  2. 修改config.toml文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# wx-msg-push
[server]
addr = ":8777" # 端口
maxhttptime = "5s" # 秒

# 企业微信配置 可配多个应用
[wechatconf.mhatp]
corpid = "ww123456786543" # 企业id
corpsecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # 应用Secret
agentid = 1000002 # 应用AgentId
mediaid = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
enableduplicatecheck = 0 # 是否开启重复消息检测 1:开 0:关
duplicatecheckinterval = 0 # 重复消息时间间隔 单位秒
you_corp1_secret = "123"


  1. 再运行
1
nohup wx-msg-push server -c config.toml
  1. 最后访问
1
curl -L -G --data-urlencode content=你的内容 "https://你的域名/mhatp(对应上面配置中的名字)?&type=text&touser=你的名字"

部署于腾讯云SCF云函数上,请参考这里

有一点需要注意,如果你发现你的微信App无法收到来自企业微信的消息,请在企业微信App里设置一下消息通知的权限。

本站在百度的索引量长期为 1,为了增加一点点来自百度的流量,在百度资源平台提交 sitemap 后很久还是为 1,就想使用百度资源平台中的普通推送来手动提交下自己网站的链接,但是所使用的博客系统没有生成这种一个链接一行的文件,一个一个链接复制进文本再提交有亿点累,于是写下这个脚本。
根据网站的 sitemap 来生成一个链接一行的文本,再向百度推送。
由于学识浅薄,代码不是很优雅,欢迎指教。

1
2
curl https://www.mhatp.cn/sitemap.xml |grep https | cut -d'>' -f2 | cut -d'<' -f1 > urls.txt
curl -H 'Content-Type:text/plain' --data-binary @urls.txt "http://data.zz.baidu.com/urls?site=https://www.mhatp.cn&token=YOURTOKEN"

如果你站开启了 WAF 防护,屏蔽了机器人的请求,直接拿本脚本测试可能无法达到预期结果。
可以把脚本放在和你的网站同一个服务器上运行,直接访问源站绕过 CDN 等云服务商提供的 WAF。

1
2
curl --resolve 'www.mhatp.cn:443:127.0.0.1' https://www.mhatp.cn/sitemap.xml |grep https | cut -d'>' -f2 | cut -d'<' -f1 > urls.txt
curl -H 'Content-Type:text/plain' --data-binary @urls.txt "http://data.zz.baidu.com/urls?site=https://www.mhatp.cn&token=YOURTOKEN"

2021.9.3 发布这篇文章 22 小时后更新
百度依旧 1 索引,而谷歌已经收录本文章,准备在 Robot.txt 里放弃百度了。

又是一个 shell 脚本的使用,比上一个检测迎新网开启的脚本多了一个保存上一次版本到文件的设定。
为了和 XOX 更好的交流写下了这个脚本。很难想象口袋 48 这个 APP 的安卓版本在应用内部竟然不能检测更新,只能在刷微博中猛的竟然更新了或是在浏览器中下载安装后才知道是否有最新版本。我写下这个脚本,方便冈峦们下载新版本的口袋 48。

抓包并提取信息

请求头中含有新版本的信息

1
curl -I https://pother.48.cn/othersystem/api/version/v1/download/fansapp/android

从中提取出链接。

1
2
curl -I https://pother.48.cn/othersystem/api/version/v1/download/fansapp/android | grep Location
#Location: http://download.48.cn/fansapp/pocket48_v6.2.1_b21080802_20210808_01.apk

再使用 cut 来获取最新构建的日期。学习一下用法。

1
cut -d'符号' -f第几段

我们需要的是 b21080802 这一段,它在 ‘_与_ ‘之间,数一数是第四段,所以只需要cut -d'_' -f3

1
curl -I https://pother.48.cn/othersystem/api/version/v1/download/fansapp/android | grep Location | cut -d'_' -f3

获取下载链接同理.

1
curl -I https://pother.48.cn/othersystem/api/version/v1/download/fansapp/android | grep Location | cut -d' ' -f2

保存数据

我尝试使用 cat 来储存我们的数据,复习一下。

1
2
3
cat > 你的文件名.txt << END_TEXT
文件内容
END_TEXT

当然 echo 也可以。

1
echo 文件内容 > 你的文件名.txt

判断是否更新

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
if [ "$now" != "$old" ]

then

echo '没更新!'

#那就更新old

cat > pocket48.txt << END_TEXT

$now

END_TEXT

else

echo '更新了!'

curl https://YourAPImsg=Pocket48+$now

#然后更新old

cat > pocket48.txt << END_TEXT

$now

END_TEXT

fi

最终代码

如果你想改变文件的位置,只需要把 pcoket48.txt 改成你想要它存在的位置,如/root/123.txt。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
old=`cat pocket48.txt`
echo "$old"
now=$(curl -I https://pother.48.cn/othersystem/api/version/v1/download/fansapp/android | grep Location | cut -d'_' -f3 )
link=$(curl -I https://pother.48.cn/othersystem/api/version/v1/download/fansapp/android | grep Location | cut -d' ' -f2 )
now=$now
echo "$now"
if [ "$now" == "$old" ]
then
echo '没更新!'
#那就更新old
cat > pocket48.txt << END_TEXT
$now
END_TEXT
else
echo '更新了!'
curl -L -G --data-urlencode msg=口袋48已更新$link "https://YourAPI"
#然后更新old
cat > pocket48.txt << END_TEXT
$now
END_TEXT
fi

某校迎新网迟迟不开,具体表现为填写正确的信息也显示不存在,所以气愤的我写下这个 shell 脚本来监控并且在能成功登陆时发送推送消息。

抓包

网页是 http 的,抓包无比简单,任意打开一款抓包软件,简单分析就会发现。
我们只需要对http://hello.jxufe.cn/wx/student/login.do发送 Post 请求
带参数userName=录取证书号&passWord=身份证后八位就可以了。

构建请求测试

在 Paw 上简单测试,发现这迎新网没有最基本的反爬虫设置,Useragent 不改就能获得正确信息。直接开始写脚本吧。

构建 shell 脚本

完全的脚本在最下面,简单分析一下。
首先是使用 curl 模拟 post 请求。grep 提取是否”错误“这个字符,再使用 wc 来输出行数便于后面判断。

1
curl -d'userName=录取证书号&passWord=身份证后八位' -X POST http://hello.jxufe.cn/wx/student/login.do | grep "错误" | wc -l

在使用 if 函数判断“错误”这文字是否存在。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 自行替换中文部分,你的推送链接可以从 Server 酱等平台获取。

# 2021.8.21 成功推送了消息,但是登陆后,填完信息无法提交,哈哈。

check(){

RESULT=$(curl -d'userName=录取证书号&passWord=身份证后八位' -X POST http://hello.jxufe.cn/wx/student/login.do | grep "错误" | wc -l)

echo $RESULT

if [ $RESULT -eq "0" ]

then curl https://你的推送链接?msg=%E8%B4%A2%E5%A4%A7%E8%BF%8E%E6%96%B0%E7%BD%91%E7%9C%9F%E7%9A%84%E5%BC%80%E4%BA%86%EF%BC%81http%3A%2F%2Fhello.jxufe.cn%2Fwx%2Fstudent%2FtoBind.html

fi

}

check

正在更新中

正在更新中

上一次更新时间2021.08.26
为什么先发布呢?为了督促自己完工




在 Macos 下安装日常软件配置开发环境虽然对于 Windows 来说简单不少,但是仍然比较复杂。在配置的过程中往往需要在信息杂乱的网络上频繁搜索,特地写下这一篇文章来记录我在 Mac 上的一些配置,便于以后迁移时查看。如果能帮到你,欢迎分享这篇文章给你的朋友!

系统设置

一些必须掌握的快捷键

快捷键对于我们使用 Mac 效率的提高非常重要,下面介绍一些常用的快捷键。我相信你会用到的!

command + Q 强制退出应用
command + W 退出当前页面(关闭浏览器的一个网页窗口
command + shift + T 把刚刚关闭的页面打开(在浏览器中非常方便
command + R 刷新
command + T 新建页面 (浏览器中加一个空白页
command + H 隐藏当前应用
command + N 新建窗口/文件
command + F 搜索
command + control + F 全屏
command + shift + 3/4/5 都是截屏/录制,有什么区别自己摸索吧!
command + shift + F 全屏下隐藏标题栏(浏览器中
command + Tab 切换上一个应用
command + 1/2/3/4/5 选择第一个/第二个/第n个窗口(浏览器中特别好用
command + 空格 开启聚焦(搜索框 可以方便的开启应用 查汇率等等
command +a z x c v 这个不用介绍了

环境配置

小小建议:在与代码打交道中遇到一些问题是无比正常的,我们通常先自己尝试解决,再到搜索引擎搜索寻求办法。但如果你使用中文搜索,搜索结果往往被 CXXN,某某开发者社区,培训班和胡乱机翻的站点所占据。如果你的英语水平不错,最好使用英文在国际搜索引擎上搜索。
如果仍然解决不了,需要提问,推荐一篇文章提问的智慧

安装 Brew

https://brew.sh/

1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

电脑( Mac Windows )端的 Obsidian 同步

Obsdian 的数据库( vault )是文件夹,有很多方法可以同步多台电脑端的 Obsidian 。除去官方的每月 8 刀付费方案,我们常用的方法是通过 Onedrive ,Google Drive ,Dropbox ,iCloud等网盘来同步,非常方便,操作也很简单,只需要你将 Vault 放在网盘的同步目录下。

但是使用 Git 来进行版本管理更方便和易用,也可以通过 commit 信息来增强对修改的可读性,还可以一次上传多个库,最大程度保证信息安全。

使用 Git 来同步

Git 的基本配置请自行搜索解决。

首先在网页上建立一个 Github 等 Git 仓库的私有库。

1
2
3
4
5
6
cd yourvault # 进入你的 vault 目录
git init
git remote add origin https://xxxx.git #你项目的 Git 地址
git add .
git commit -m "init"
git push -u origin master

再在 Obsidian 的设置中的第三方插件里安装 Obsidian Git 这个插件。
最后在 Obsidian 设置中找到 Obsidian Git 的设置,设置定时上传, commit 信息等等。
还有别忘了在快捷键设置中设置一个你喜欢的快捷键,方便手动 Pull/Push !

和 ios 同步

如果只需要 Mac 与苹果 ios 设备之间同步,毫无疑问 iCloud 是最优解。

iCloud 进行同步

使用 iCloud 进行同步,设置下文件夹的位置即可。

通过 Git 同步

使用 Git+WorkingCopy

AppStore 下载 Workingcopy 连接 GitHub/Gitlab等平台账号,设置文件存储位置即可。由于没有设备,只能靠你自己摸索了。

和 安卓Android 同步

官方 Onedrive等网盘App 似乎无法设置同步文件夹,所以只能通过第三方软件来实现。

各种网盘+FloderSync(安卓11可用,免费版仅仅是有广告)。

Play Store 安装 FloderSync 登陆你的网盘账号,设置同步文件夹进行同步。
可以添加你喜欢的地址,几乎支持所有主流网盘,还包括s3 webdav Sftp owncloud/nextcloud/pcloud 等等自建网盘系统。

再设置同步,按需开启计划同步。

由于 Android 11 对文件管理的限制,以及国产 Rom 严格的后台保护,无法做到 iCloud 一般的体验,往往需要手动点击软件内同步来获取更新。

简单记录自己在服务器上的事,慢慢更新完善中!

连接服务器

购买后在控制台下载私钥后
强烈建议轻量服务器选择 docker 版本
Mac 终端输入

1
open ~/.ssh

保存进去取一个名字xxx
再设置权限

1
chomd 600 xxx

连接服务器

1
ssh xxx

打开端口

在控制台安全组开放端口80,443,8888。

安装宝塔 Nginx

为了操作方便,安装宝塔

安装宝塔

宝塔

安装Nginx

宝塔安装即可

配置 Docker

在宝塔中安装 Docker 管理器,添加镜像(如果是 Docker 轻量则不需要,因为默认已经配置好了)。可以参考这里

1
2
3
4

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

安装VaultWarden

参考文档
新建一个文件夹,用于存放数据
在其中加入 docker-compose.yml 文件内容如下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
version: "3"

services:
vaultwarden:
image: vaultwarden/server
container_name: vaultwarden
restart: always
ports:
- "127.0.0.1:8081:80"
- "127.0.0.1:3012:3012"
volumes:
- ./vw-data:/data
environment:
WEBSOCKET_ENABLED: "false" #Websocket 不知道干啥的,关闭
SIGNUPS_ALLOWED: "true" #允许注册,建议注册后关闭(true改为false
WEB_VAULT_ENABLED: "true" #网页形式访问,建议注册后使用 App /插件 管理密码库
#ADMIN_TOKEN: ""

启动

1
docker-compose up -d

关闭

1
docker-compose down

注册后在网页版导入密码库,插件/手机设在私有网站,登陆使用。

安装Halo

参考连接
如果你想用WordPress,Typecho,Hexo等等大同小异。
我推荐新手使用Halo,因为几乎所有功能都能在页面上呈现,对使用代码要求很低。

设置 Nginx 反向代理

在宝塔界面设置即可。图图稍后到!

一系列安全操作

前两项务必做!

设置 Https

免费的Let’s Encrypt就够用了!
在宝塔域名界面即可申请

对宝塔面板进行防护

最好的方法是 不用宝塔 在安全组中关闭宝塔面板的端口,等待需要时进行打开。
如果懒,请至少在设置页面改常用端口(记得在安全组放行),设置BasicAuth认证,开启双重认证,最大程度防止被攻击。

设置 Cdn 加速

Cdn 可以防止泄露真实 ip ,加快访问速度,以及屏蔽一些简单攻击,如果只有自己用,没必要设置。
推荐使用Dogecloud,每月 20 GB 融合 Cdn 流量,足够使用了!

对 Nginx 的防护

设置 cdn 加速后(没设置 Cdn 可以不做),直接访问原站 ip:443 得到的证书会暴露域名,为了防止攻击必须对 Nginx 进行保护。下面是最简单的保护方式。
推荐先在腾讯云安全组关闭80端口访问,只保留必要的22,443和宝塔端口(默认8888)。在cdn回源时强制 https 回源。
在宝塔–网站 中加入以你的服务器 ip 为名字的网站,在 SSL 设定中加入自签名证书,开启强制 https 访问,在文件管理中删除 index.html,现在访问 ip:443 就无法获得域名信息了。在线生成自签名证书
举例

备份 防止数据丢失

备份无比重要
在宝塔中操作非常简单!

YouTube Music除没有滚动歌词外都挺好,像 Spotify AppleMusic没有的“红心”功能也以点赞的方 式呈现,中文化做的不错。除了翻译完善外,直接搜霉霉这种昵称也能出来想要的歌手。

我带着APs pro开降噪也听不出音质区别,大概4M— 首歌。国内要付费的歌曲也不需二次付费,也有 在人间 这种国内下架的歌,但是像歌手这种综艺上的歌似乎没有。

和GoogleAssitant的配合很棒,这Premium买的值。
Google Assitant
YT Music除没有滚动歌词外都挺好,像 Sp AppleMusic没有的“红心”功能也以点赞的方 式呈现,中文化做的不错。除了翻译完善外,直接搜霉霉这种昵称也能出来想要的歌手。

我带着AirPods pro开降噪也听不出音质区别,5-8M一首歌。国内要付费的歌曲也不需二次付费,也有 在人间 这种国内下架的歌,但是像歌手这种综艺上的歌似乎没有。

和GoogleAssitant的配合很棒,这Premium买的值。
Google Assitant
歌词界面对比,YT有些歌甚至没有歌词,更别说逐字滚动歌词,歌曲进度随点击歌词调整到对应位置这些功能了。

0%