TechIO

使用 Prism.js 插件在 Ghost 博客的代码区里添加复制功能

使用 Prism.js 插件在 Ghost 博客的代码区里添加复制功能

Ghost 这么成熟的博客系统,竟然代码区还不支持复制功能,真是有点无语。经过一番搜索研究,终于可以使用 Prism.js 插件为 Ghost 博客的代码区添加复制功能 * 首先写代码区的时候,右上角的代码语言一定要写上,否则这种方法不能添加复制功能 * 打开下面网站下载 js 和 css 文件,默认已经选择了需要的选项,也可以按照自己的需要进行调整 https://prismjs.com/download.html#themes=prism-okaidia&languages=markup+css+clike+javascript+css-extras+python&plugins=custom-class+highlight-keywords+inline-color+toolbar+copy-to-clipboard * 到网页最下端下载 js 和 css 两个文件,文件名为 prism.
2 min read
在 Debian 12 上安装 MySQL 8.0
mysql

在 Debian 12 上安装 MySQL 8.0

更新系统包列表 sudo apt update 下载 MySQL APT 仓库配置文件 wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb 安装依赖 gnupg,网上没有说要安装这个依赖,但是在 Debian 12 上直接运行下一步的话,会报错说缺少这个依赖 sudo apt install gnupg 安装 MySQL APT 仓库 sudo dpkg -i mysql-apt-config_0.8.30-1_all.deb #在配置过程中,选择MySQL 8.0版本 更新包列表以包含新添加的
1 min read
浅谈在 MariaDB 和 MySQL 中配置 binding-address

浅谈在 MariaDB 和 MySQL 中配置 binding-address

先解释一下一台 VPS 机器上的几种不同 IP * 127.0.0.1(也称 localhost ,本机 IP ,只有本机才能访问) * 192.168.1.88(内网 IP,只有内网才能访问) * 142.250.115.139(外网 IP,所有外网机器都能访问) * 172.17.0.1( Docker 的桥接 IP ,所有 docker 都能访问) binding-address 是指数据库所监听的 IP,就是可以通过这个 IP 来连接数据库,如果监听的 IP 只是内网 IP,那么只有能连接到内网 IP 的机器才可通过
2 min read
安装 Caddy 和 PHP,在 Caddy 上运行 PHP 网站

安装 Caddy 和 PHP,在 Caddy 上运行 PHP 网站

最常用的 Web 服务器有 Apache,Lighttpd,Nginx 和 Caddy,四种服务器都曾经尝试用过,各有其优缺点,在这里就不详细说明了。因为本人常用 PHP 建站,所以也在4种服务器上安装过 PHP 支持,试用了一遍后,最后决定还是用 Caddy 和 PHP 配合建站。 安装 Caddy 可以查看下面这篇教程 安装配置 Caddy 服务和反向代理从最初搭建网站和 Docker 开始就一直在用 Nginx 做反向代理,Nginx 非常好用,做反代申请 SSL 证书都很方便。最近接触到 Caddy,发现 Caddy 也很简单易用,虽然没有 GUI,但是编辑配置文件相当简单,新手也可以一学就会。 Caddy 是一个强大、可扩展的开源
3 min read
让 Docker 同时支持 IPv4 和 IPv6 访问

让 Docker 同时支持 IPv4 和 IPv6 访问

最近在 uptime-kuma 上想添加一个仅 IPv6 主机的监控,但是发现添加了监控后无法 ping 通,但是从 uptime-kuma 所在的主机上是可以 ping 通 IPv6 的主机的。于是查了一下,发现不仅是主机需要支持 IPv6,docker 还需要开启 IPv6 功能才可以让 docker 支持 IPv6。 GitHub - louislam/uptime-kuma: A fancy self-hosted monitoring toolA fancy self-hosted monitoring tool. Contribute to louislam/uptime-kuma development by creating an account on GitHub.GitHublouislam
2 min read
安装配置 Caddy 服务和反向代理
caddy

安装配置 Caddy 服务和反向代理

从最初搭建网站和 Docker 开始就一直在用 Nginx 做反向代理,Nginx 非常好用,做反代申请 SSL 证书都很方便。最近接触到 Caddy,发现 Caddy 也很简单易用,虽然没有 GUI,但是编辑配置文件相当简单,新手也可以一学就会。 Caddy 是一个强大、可扩展的开源 Web 服务器,使用 Go 语言编写。它旨在简化 Web 托管,使其变得简单易用。 Caddy的主要特点包括: * 自动 HTTPS - 默认为所有站点启用 TLS 加密 * 在线配置 API - 可以通过 RESTful API 动态配置 * 简单易用 - 配置简单,无需复杂设置 * 高性能
3 min read
配置 Fail2ban 监控 SSH 连接和自动封禁 IP
ssh

配置 Fail2ban 监控 SSH 连接和自动封禁 IP

Fail2ban 是一个简单高效的入侵防御工具,可以有效减少暴力破解等攻击的风险。对于需要公网访问的服务器来说是一个不错的安全防护选择。 Fail2ban 支持多种服务的保护,如SSH、Apache、Nginx等,这里主要介绍一下监控 SSH 连接和自动封禁 IP。 1. 安装Fail2ban sudo apt install fail2ban 2. 创建一个本地配置文件 sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local 3. 编辑 jail.local 文件 sudo nano /etc/fail2ban/jail.local 4. 在 [sshd] 部分添加或修改以下配置 [sshd] # 启用SSH监控 enabled = true
2 min read
在 Ubuntu 和 Debian 上安装使用 UFW 防火墙
firewall

在 Ubuntu 和 Debian 上安装使用 UFW 防火墙

Ubuntu 和 Debian 上有几种常用的防火墙 * iptables * 这是 Linux 内核中内置的防火墙。 * iptables 是传统的防火墙配置方法,但现在被认为是过时的。 * UFW (Uncomplicated Firewall) * 这是 Ubuntu 默认的防火墙配置工具。 * UFW 提供了一个简单易用的命令行界面来管理 iptables 规则。 * 它预装在 Ubuntu 系统中,但默认是禁用状态。 * Firewalld * 这是一个动态管理的防火墙工具。 * 它提供丰富的规则语言,支持更复杂和灵活的防火墙规则。 这里主要讲一下 UFW 的使用,个人感觉 UFW 的命令行最简单,最容易记住。 1. 安装 UFW sudo apt update sudo apt install ufw 2. 在启动防火墙之前先打开 ssh 端口,
2 min read
在局域网里安装配置 DNSMasq 实现域名访问局域网电脑

在局域网里安装配置 DNSMasq 实现域名访问局域网电脑

家庭局域网里每台机器都会分配一个 IP ,每台机器之间要想互相访问,就要用到机器的 IP 。机器多了可能不容易记住每台机器的 IP ,如果要是在内网再架设一些网站,就更容易弄混了。 这里介绍一个开源免费的轻量级 DNS 服务器 DNSMasq ,安装调试好 DNSMasq 服务之后,就可以很容易地用域名来访问内网的机器了。 * 如果想用 DNS 服务,机器的 IP 地址最好是不变的,首先在路由器里把需要访问的机器的 IP 设为保留地址,这样这些 IP 地址就总是绑定在这些机器的 MAC 地址上,不论是重启或是长时间关机后再开机,这些机器的 IP 地址都是不变的。各种品牌的路由器设定保留地址的方法都大同小异,如何设定请参看所用路由器的说明书 * 在一些系统中,可能需要禁用系统自带的 systemd-resolved 服务,这样可以避免端口 53 的冲突 # 禁用并停止 systemd-resolved 服务 sudo systemctl disable
4 min read
如何让 docker 容器使用同一个网段 IP
docker

如何让 docker 容器使用同一个网段 IP

Docker 创建容器时会用默认的 docker 网段(172.17.0.1/16)来创建新 docker 容器,Docker compose 创建时会选未用的 docker 网段来创建新 docker 容器。这样有时候不同的 docker 就会创建在不同的 subnet 里。如果每个 docker 都是独立存在的也没有什么关系,但是如果 docker 之间要互相访问的话,就有可能出现无法通讯的问题。 特别是在 docker 里安装了数据库(MySQL, MariaDB 等)容器,其他 docker 有可能需要连接到数据库运行。如果是在不同的 subnet 里,就会发生无法访问的问题。 这次教程主要讲一下如何创建一个 docker 的网段,并让所有的 docker
2 min read
在 Ghost 博客里配置 SMTP 发送邮件

在 Ghost 博客里配置 SMTP 发送邮件

如果 Ghost 只是发布博客,不开放用户注册的话,是不需要邮件发送功能的。但是如果需要支持新用户注册,就必需开启邮件发送功能。 如果 Ghost 服务是自己在 VPS 上架设的 ,本身是不带邮件发送功能的。要想让 Ghost 支持邮件发送,就需要用到第3方的 SMTP 服务。 现在比较流行的有 Brevo( SendInBlue 改名而来)和 MailGun 。两个都支持免费计划,感觉 Brevo 的免费计划更好,所以就以 Brevo 为例。Brevo 注册和设置这里就大致说一下步骤,具体细节就不说了,很简单,网上也有很多教程,。 * 在 Brevo 注册一个新账户 * 添加你邮箱要用的 domain * 在你域名服务商里添加所需要的 DNS TXT 记录 * 完成上面步骤,域名验证成功后,就可以看到 Brevo
2 min read
如何把 Ghost 博客里的页面设为网站首页
ghost

如何把 Ghost 博客里的页面设为网站首页

Ghost 主要是用来建站发布博客,Ghost 的首页默认显示的是所有发布过的博客列表。如果把里面的某个页面(Page)做为网站的首页,这样就可以用 Ghost 来搭建个人主页或是小型的公司主页。 这里教大家如何把里面的页面设为网站首页。 * 进入后台管理,点击左侧 [pages] ,然后点击右侧 [New page] 。创建好你想要显示的主页,记得右侧的 [Page URL] 填上 [home] * 连接到 VPS 主机,找到 [https://blog.techio.top/%E4%BD%A0%E7%9A%84%20Ghost%20%E5%AE%89%E8%A3%85%E7%9B%AE%E5%BD%
2 min read
在 Lighttpd 上配置 https + 不同域名访问不同子目录的内容
lighttpd

在 Lighttpd 上配置 https + 不同域名访问不同子目录的内容

如果是第一次配置 https SSL 证书 + 域名的话,建议先阅读下面两篇教程 设置 https + 域名访问网站的最简单方法 - 不需要 SSL 证书,通过 Cloudflare 实现现在的网站,https 加密传输已经是标准配置了,不支持 https 的网站基本已经不存在了,也没法存活了。但是新手自己配置 https + 域名还是不太容易,这篇文章教大家一个最简单的方法配置 https + 域名 域名的购买和在 Cloudflare 上托管就不在这里说明了,网上有很多很好的教程,这里主要讲一下不申请 SSL 证书,用 Cloudflare 实现 https + 域名访问自己的搭建的网站。 最简单的网站( IP : 80 端口)(端口不是 80 的网站看下面) 如果搭建的网站或是网页地址是 http://142.
4 min read
在 Lighttpd 上用 CertBot 安装 Let’s Encrypt SSL 证书
ssl

在 Lighttpd 上用 CertBot 安装 Let’s Encrypt SSL 证书

本教程仅支持 ubuntu 和 debian 系统 * 如果你是第一次配置用 https + 域名来访问网站,建议先阅读下面这篇教程 设置 https + 域名访问网站的最简单方法 - 不需要 SSL 证书,通过 Cloudflare 实现现在的网站,https 加密传输已经是标准配置了,不支持 https 的网站基本已经不存在了,也没法存活了。但是新手自己配置 https + 域名还是不太容易,这篇文章教大家一个最简单的方法配置 https + 域名 域名的购买和在 Cloudflare 上托管就不在这里说明了,网上有很多很好的教程,这里主要讲一下不申请 SSL 证书,用 Cloudflare 实现 https + 域名访问自己的搭建的网站。 最简单的网站( IP : 80 端口)(端口不是 80 的网站看下面)
4 min read
设置 https + 域名访问网站的最简单方法 - 不需要 SSL 证书,通过 Cloudflare 实现
ssl

设置 https + 域名访问网站的最简单方法 - 不需要 SSL 证书,通过 Cloudflare 实现

现在的网站,https 加密传输已经是标准配置了,不支持 https 的网站基本已经不存在了,也没法存活了。但是新手自己配置 https + 域名还是不太容易,这篇文章教大家一个最简单的方法配置 https + 域名 域名的购买和在 Cloudflare 上托管就不在这里说明了,网上有很多很好的教程,这里主要讲一下不申请 SSL 证书,用 Cloudflare 实现 https + 域名访问自己的搭建的网站。 最简单的网站( IP : 80 端口)(端口不是 80 的网站看下面) 如果搭建的网站或是网页地址是 http://142.250.115.113:80,IP 是不支持 https 的,所以只能是 http ,默认端口是 80,所以 80 也可以不加,
4 min read
如何卸载、重装 MariaDB 数据库
maria

如何卸载、重装 MariaDB 数据库

此教程仅适用用 Ubuntu 和 Debian 系统 * 卸载 MariaDB sudo apt-get purge mariadb-* * 安装 MariaDB 请查看下面两篇教程安装 MariaDB 在 ubuntu 和 debian 上安装 MariaDB 数据库MariaDB Server 是一个通用的开源关系数据库管理系统。 它是世界上最受欢迎的数据库服务器之一。 当 MariaDB Server 的前身 MySQL 于 2009 年被 Oracle 收购时,MySQL 创始人 Michael “Monty” Widenius 出于对 Oracle 管理权的担忧而分叉了该项目,并将新项目命名为 MariaDB。 MySQL 以他的第一个女儿 My 命名,而
2 min read
在 Ubuntu 和 Debian 上安装最新版 MariaDB
maria

在 Ubuntu 和 Debian 上安装最新版 MariaDB

Ubuntu 和 Debian 系统包里自带的 MariaDB 的数据库版本比较低,基本都是 10.x 版本。 可以用下面的方法安装 MariaDB 最新版本或是任意版本。 * 升级更新系统 sudo apt update && sudo apt -y upgrade * 添加 MariaDB APT 存储库 # 在版本号的参数里填上要安装的版本号,下面要安装的是 11.4.3 curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=11.4.3
1 min read
在 Ubuntu 和 Debian 上部署 Lighttpd 和 PHP 网站运行环境
lighttpd

在 Ubuntu 和 Debian 上部署 Lighttpd 和 PHP 网站运行环境

Lighttpd 网站服务器是著名的 Apache 最佳替代品之一。它属于轻量级产品,可以很容易地提供网站静态或动态内容。 与其他Web服务器相比,它安全性高,消耗资源较少。这篇文章主要讲解如何在 Ubuntu 和 Debian 上安装 Lighttpd 和 PHP,并且为其配置运行环境。 最简单的方法就是运行我写的虚拟主机初始安装配置一键脚本,跳过其他步骤,直接运行安装配置 Lighttpd 和 PHP 虚拟主机初始安装配置一键脚本功能: 开源脚本,可自行更改或复制(脚本仅支持 ubuntu 和 debian 系统) * 升级更新系统软件包 * 安装常用工具 * 添加 Swap 虚拟内存 * 安装 docker 和 docker-compose * 更改系统时区 * 更改主机名 * 创建非 root 用户 * 创建 docker 网络 * 安装配置
2 min read
在 docker 上部署 Ghost 博客网站
ghost

在 docker 上部署 Ghost 博客网站

Ghost 是使用 Node.js 语言编写的开源博客平台,使用 Ghost 可以快速搭建博客,简化在线出版过程。 1. 安装 docker 和 docker-compose (如果还没有安装) # 建议用 root 用户运行 # install docker curl -fsSL https://get.docker.com -o get-docker.sh sh ./get-docker.sh # install docker-compose curl -SL https://github.com/docker/compose/releases/download/v2.29.1/docker-compose-linux-x86_64 -o /usr/
3 min read
在 ubuntu 和 debian 上安装 MariaDB 数据库
maria

在 ubuntu 和 debian 上安装 MariaDB 数据库

MariaDB Server 是一个通用的开源关系数据库管理系统。 它是世界上最受欢迎的数据库服务器之一。 当 MariaDB Server 的前身 MySQL 于 2009 年被 Oracle 收购时,MySQL 创始人 Michael “Monty” Widenius 出于对 Oracle 管理权的担忧而分叉了该项目,并将新项目命名为 MariaDB。 MySQL 以他的第一个女儿 My 命名,而 MariaDB 则以他的第二个女儿 Maria 命名。 1. 安装MariaDB数据库 sudo apt install mariadb-server 2. MariaDB安全设置 mysql_secure_installation 设置中会问一些问题,具体解释可以看屏幕提示,下面是推荐设置 Enter current password
3 min read
虚拟主机初始安装配置一键脚本
bash Featured

虚拟主机初始安装配置一键脚本

功能: 开源脚本,可自行更改或复制(脚本仅支持 ubuntu 和 debian 系统) * 升级更新系统软件包 * 安装常用工具 * 添加 Swap 虚拟内存 * 安装 docker 和 docker-compose * 更改系统时区 * 更改主机名 * 创建非 root 用户 * 创建 docker 网络 * 安装配置 MariaDB 数据库 * 安装配置 Lighttpd 和PHP * 安装 CertBot 证书生成包 * 创建 PHP 测试网页 GitHub - tigerzioo/vps_startpackContribute to tigerzioo/vps_startpack development by creating an
1 min read