近况
期中考刚考完,我也难得有时间静下心来写博客,虽然文笔不太好就是了
这个星期,广州跳过了秋天,直接来到了冬天,也可以说广州根本就没有春天和秋天
看了archlinux 简明指南的教程,在虚拟机试了一次后为我的物理机安装上了Arch,不得不说,aur是真的好使,很多包都能在上面找到
每日一滚
sudo pacman -Syu
最近半价买了一个月雨云的云服务器,学了下Nginx,把我的博客迁移到了上面
Nginx
原本想再水一篇,但想着也没什么好写的,就合并在一起
在你喜欢的目录创建用于存放博客的文件夹,将博客仓库git下来
server {
listen 80;
server_name test.inuya.ltd;
root /home/blog;
location / {
}
}
跟之前一样,在服务器/etc/nginx/conf.d
目录下创建test.inuya.ltd.conf
配置文件,写入以上内容,这里我用二级域名test.inuya.ltd
演示
在域名提供商添加A类型
解析,填入你的IP,使用http://test.inuya.ltd
即可访问博客
https
配置完,会有一个问题,就是无法通过https访问,现在很多博客的友联已经不再添加没有https的博客了
ssl证书
阿里云现有免费的一年ssl证书可以申请
阿里云证书现只有三个月有效期,遂更换cerbot自动续费
- 在你的debian或基于debian的发行版上安装snap
sudo apt install snapd
- 安装cerbot snap包
sudo snap install --classic certbot
- 准备 Certbot 命令
sudo ln -s /snap
- 获取证书,这里选择手动配置
sudo certbot certonly --nginx
- 测试下自动续费
sudo certbot renew --dry-run
证书应位于/etc/letsencrypt/live
在Nginx中填入即可
其他发行版也可参考certbot instructions,选择对应的发行版即可
配置
在原本的test.inuya.ltd.conf
的配置中添加以下内容
server {
listen 443 ssl;
#配置HTTPS监听端口443。
server_name test.inuya.ltd; #将test.inuya.ltd换成证书绑定的域名
root html;
index index.html index.htm;
ssl_certificate cert/test.inuya.ltd.pem; #将test.inuya.ltd.pem换成自己的证书
ssl_certificate_key cert/test.inuya.ltd.key; #将test.inuya.ltd换成自己的证书密钥
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#表示使用的加密套件的类型。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #表示使用的TLS协议的类型。
ssl_prefer_server_ciphers on;
location / {
root /home/blog; #站点目录。
index index.html index.htm;
}
}
使用systemctl restart nginx
重启Nginx,尝试带https访问网址
重定向
如果想让所有的http访问都301重定向到https,可以在80端口的配置中添加一句return 301 https://$server_name$request_uri;
就像这样
server {
listen 80;
server_name test.inuya.ltd;
return 301 https://$server_name$request_uri;
root /home/blog;
location / {
}
}
主页
域名只解析博客太浪费了,于是搭建了我的主页
Twikoo评论
都有服务器了,还用什么valine,早就听闻twikoo配置方便,今天一用,相见恨晚
我是用的是docker部署,docker run时加上--restart=always
设置自启
部署完后访问http://<ip>:8080
,返回值如下
"Twikoo 云函数运行正常,请参考 https://twikoo.js.org/frontend.html 完成前端的配置"
Nginx反向代理
因该是这么叫吧
部署到服务器后,发现评论系统被拦截了,因为博客是https,但评论只有http,所以被拦截
到域名服务商新建一条A记录
解析,填入你的IP
在/etc/nginx/conf.d
新建配置文件
server {
listen 80;
server_name twikoo.inuya.ltd; # 设置的域名
return 301 https://$server_name$request_uri; # 重定向至HTTPS
location / {
}
}
server {
listen 443 ssl;
server_name twikoo.inuya.ltd;
ssl_certificate cert/twikoo.inuya.ltd.pem; # 配置证书
ssl_certificate_key cert/twikoo.inuya.ltd.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
# 表示使用的加密套件的类型。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # 表示使用的TLS协议的类型。
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://localhost:8080; # 反向代理至8080端口
}
}
systemctl restart nginx
重启Nginx,尝试使用域名访问
CDN
最近博客莫名延迟变高,甚至到了无法访问的地步,于是想着给博客套个CDN加速一下;正好雨云有免费的CDN可用
在雨云创建一个新的CDN,如购买了雨云的产品(云服务器/虚拟主机)可以免费使用。
创建完后复制生成的网址到域名注册商添加CNAME
,这里为了方便直接使用*.inuya.ltd
泛解析
题外话
博客第一次有人主动申请友链,还是蛮激动的
如果有急事可以用inuya@foxmail.com
联系我,因为是腾讯的邮箱所以可以微信提醒,回复的比较及时
参考
- Nginx:Nginx添加SSL实现HTTPS访问
- nginx开启ssl并把http重定向到https的两种方式
- nuxt.js项目部署到linux服务器,并使用域名访问
- 个人服务器上部署博客评论系统:Twikoo
- Docker 容器设置自启动
- Twikoo文档
- Certbot 说明
Last modified on 2023-11-17