简介说到个人网页,很多朋友都使用过无头服务器来部署静态网页。无头服务器是免费的,但是更新静态网页非常麻烦,而且远不如带有数据库的动态网页有用。例如WordPress、Typecho、Hexo 等都是很棒的动态Web 框架。 Cherry在这里向您介绍一个美观且易于使用的动态网页框架。这还允许通过cf 代理进行无端口访问。本文采用海外VPS部署,仅供技术交流,如有需要,您需要注册您的国内服务器网站。
Halo 部署1. 使用docker-compose 安装halo,并使用Synology Container Manager 的项目功能创建新的compose 项目。
使用Dockge 管理创作项目
编写mysql中使用的代码
Version3: '3'serviceS: HALO: IMAGE: IMAGE: HALOHUB/HALO3:2.12Container_name3: Halo 重新启动: On-FAILURE33603 DEPENDS_ON3 3360 Halodb:condition: Service_Healthy Network: Halo_network :卷:-。 /hal o2:/root/.halo2 #自定义路径ports: - '8090:8090' #自定义端口healthcheck: test: [ 'CMD', 'curl', '-f', 'http://localhost:8090/actuator/health/readiness'] Interval: 30秒timeout3336 0 5秒retries: 5 start_period: 30 秒command: - --spring.r2dbc.url=r2dbc:pool:mysql://halodb:3306/Hello - -- spring.r2dbc.username=root # MySQL 密码。确保它与下面的MYSQL_ROOT_PASSWORD 变量值匹配。 - --spring.r2dbc.password=o#DwNJSa56 - --spring.sql.init.platform=mysql # 外部访问地址。请根据您的实际需要进行更改。我们建议将其更改为您的域名加[实际访问权限]。端口] - --halo .external-url=https://cgakki.top/halodb: image: mysql:8.1.0container_name: halodb restart: on-failure:3 network: halo_network: command:- --default-authentication-plugin=caching_sha2 _password - --字符集-服务器=utf8mb4 - --collation-server=utf8mb4_general_ci - --explicit_defaults_for_timestamp=true volume: - ./mysql:/var/lib/mysql #Custom path - ./mysqlBackup:/data/mysqlBackup #Custom path ports: - '3306:3306' healthcheck333 60 test33 360 [ 'CMD', 'mysqladmin', 'ping', '-h', '127.0.0.1', '--silent'] Interval: 3s retries: 5 start_period: 30s Environmental: # 更改此密码并相应地使用上面的Halo 请更改SPRING_R2DBC_PASSWORD 变量服务的价值。 - MYSQL_ROOT_PASSWORD=o#DwNJSa56 - MYSQL_DATABASE=halonetworks: halo_network: 2.初始化Halo,输入ip:端口进入系统,更改账户密码,检查基本信息中的站点信息是否与设置的一致。
从插件商城选择主题、插件等
配置Cloudflare、注册cf账户、购买域名我们不会详细介绍,所以下面只讲解具体操作。
1.要更改cloudflare的SSL参数,首先更改右上角的中文,然后选择您的网站,输入您自己的域名,并激活您的网站。
选择左侧的“SSL/TLS —— 概述”并将SSL 设置为“完整”。
选择左侧的“SSL/TLS”——“边缘证书”并选中“始终使用HTTPS”。
选择DNS - 记录并添加IPv4 和IPv6 解析。 DDNS-GO没有配置小黄云,所以必须先设置v4和v6分辨率并启用小黄云。
2、创建自建SSL证书选择左侧“SSL/TLS”——“源服务器”,点击“创建证书”
在红框中输入您的域名和通配符域名,然后单击“创建”。
将自生成的证书代码复制到两个TXT中,重命名为cf.pem和cf.key,然后单击验证。
3.由于我们使用的是阿里云,所以我们使用Cloudflare进行DNS解析。这里我们以阿里云为例。其他域名提供商的操作类似。更改源域名提供商的DNS 指向并输入“域名”。管理控制台。
将域名的DNS解析更改为以下两个选项。
NSShazel.ns.cloudflare.comNShenry.ns.cloudflare.com 配置DNSSEC。首先,转到cloudflare,选择“DNS”——“设置”并启用“DNSSEC”。
记录“摘要”和“关键标签”列。您稍后会需要它。
进入域名管理控制台,在DNS栏中选择DNSSEC设置,将加密算法更改为13,摘要类型更改为2。顶部标签是“关键标签”(一个短的纯数字)。概述如下:您之前复制的“摘要”
4、转发端口核心就在这里。转至CF 中的规则—— 起源规则,然后选择新建规则。
转发https 端口
使用NPM反向生成1.安装nginx代理管理器并使用docker-compose进行部署。由于内容重复,就不显示了,直接给出代码。
version: '3'services: app: image: 'jc21/nginx-proxy-manager:latest' restart: Until-stopped ports: - '6080:80'# HTTP端口,根据您的喜好更改。 Remember - '6081:81'# WebUI 端口,更改为您的偏好Remember - '6443:443' # HTTPS 端口,与cloudflare 重定向的端口匹配Volume: - ./data:/data # 自定义文件目录- ./letsencrypt:/etc/letsencrypt # 自定义SSL证书目录2.将npm反向生成hello服务上传到npm页面,并上传SSL证书(默认账号:admin@example.com,默认密码:changeme)
上传您从cf 保存的.pem 和.key。
返回首页,选择代理
设置代理并直接复制地图(如果IP不是来自网桥,请自行输入)。
选择您的SSL 证书并启用强制HTTPS。
使用DDNS-GO将动态域名解析到Cloudflare 1.Cloudflare操作获取Cloudflare的API接口
选择编辑区域DNS。
选择您网站的域名,完成后单击“创建令牌”。
该令牌仅显示一次,因此请妥善保管。如果它消失了,您将别无选择,只能重新创建它。
2. DDNS-GO操作和DDNS-GO安装
[路径] docker run -d --name ddns-go --restart=always --net=host -v [路径] :/root jeessy/ddns-go --name 配置ddns-go 以启用DDNS-GO 配置。输入【ip:9876】开启DDNS-GO
如果您使用的是IPv6,请以相同的方式进行配置。
最后,cloudflare转发端口实际上也有一定的缺点,即网络问题。毕竟CF一年四季都在流行。不过,通过github上的开源项目CloudflareSpeedTest,可以自动更换主机,达到提高本地访问速度的效果。
标题:cf 端口,穿越火线端口
链接:https://www.52funs.com/news/sypc/5662.html
版权:文章转载自网络,如有侵权,请联系删除!