作者: 奶狗

  • 密码保护:陶喆2003 Soul Power演唱会

    密码保护:陶喆2003 Soul Power演唱会

    此内容受密码保护。如需查阅,请在下列字段中输入您的密码。

  • WordPress装备页面 插件版带后台

    WordPress装备页面 插件版带后台

    前言

    之前写了一个html的 由于本站的主题采用pjax加载的方式,会导致部分css失效。抽空改成了插件

    核心功能

    • 设备管理:添加、编辑、删除和排序设备信息
    • 分类功能:为设备分配不同类别,便于组织和筛选
    • 响应式设计:完美适配桌面端和移动端设备
    • 图片管理:支持从媒体库选择图片或使用外部图片URL
    • 自定义按钮:可为每个设备设置不同的按钮文本和链接
    • 简码支持:使用 simple_product_showcase 简码在任何页面或文章中嵌入设备展示

    演示图

    后台

    前台

    没啥好介绍的 安装插件 新建页面 输入简码即可。

    文件结构

    奶狗设备展示/
    ├── index.php              # 主插件文件,包含核心功能和WordPress钩子
    ├── assets/                # 资源文件目录
    │   ├── css/              # CSS样式文件
    │   │   ├── admin.css     # 管理后台样式
    │   │   └── frontend.css  # 前端展示样式
    │   └── js/               # JavaScript脚本文件
    │       ├── admin.js      # 管理后台交互脚本
    │       └── frontend.js   # 前端交互脚本

    安装方法

    1. 下载插件压缩包
    2. 登录WordPress管理后台
    3. 进入"插件" > "安装插件"页面
    4. 点击"上传插件"按钮
    5. 选择下载的插件压缩包并上传
    6. 安装完成后,激活插件

    使用方法

    添加设备

    1. 在WordPress管理后台,点击左侧菜单中的"设备展示"
    2. 填写设备信息表单,包括名称、描述、分类、图片等
    3. 点击"保存设备"按钮

    在页面中显示设备列表

    在任何页面或文章中插入以下简码:

    simple_product_showcase

    管理设备

    1. 在WordPress管理后台,点击左侧菜单中的"设备展示"
    2. 在设备列表中,可以编辑、删除或拖动排序设备
    3. 点击"编辑"按钮修改设备信息
    4. 点击"删除"按钮移除设备

    技术特点

    • 使用WordPress自定义表存储设备数据
    • 集成WordPress媒体上传器进行图片管理
    • 使用jQuery实现前端交互和后台管理功能
    • 响应式设计确保在各种设备上的良好显示效果
    • 安全性措施包括nonce验证和数据清理

    自定义与扩展

    开发者可以通过以下方式自定义插件:

    1. 修改CSS文件以调整前端和后台样式
    2. 扩展JavaScript文件以添加新的交互功能
    3. 在主题中使用过滤器钩子自定义输出

    兼容性

    • WordPress 5.0+
    • PHP 7.0+
    • 兼容大多数现代浏览器
  • 关于微信公众号账号迁移说明

    关于微信公众号账号迁移说明

    本站提供内容下载的公众号,已经更换为本人名下的个体工商户的微信服务号。

  • 一篇文章教你三大运营商改最低保号套餐

    一篇文章教你三大运营商改最低保号套餐

    推荐使用12300进行投诉 或者打开 https://yhssglxt.miit.gov.cn/

    流量时代的隐形成本:那些让我们每月多花钱的话费陷阱

    当代人的手机套餐里总藏着两个"吸血鬼",一个是永远不够用的流量包,另一个是永远用不完的通话时长。年轻人在地铁上刷完十分钟短视频,套餐余量就跳了红色预警;中年人周末带孩子出游,车载导航刚开半小时,手机就弹出"流量超额每MB收费0.29元"的刺眼提示。

    运营商精心设计的套餐体系就像个迷宫,用户永远在流量饥渴与资费焦虑中反复横跳。29元套餐里永远只有5GB通用流量,想升级到20GB就要捆绑300分钟通话和2个亲情号;59元套餐看似优惠,仔细看条款才发现30GB里20GB都是限定APP的"定向流量"。更讽刺的是,用户忠诚度成了惩罚机制,用了五年的138元老套餐,竟比不过新用户88元的5G畅享包。

    当双卡双待成为智能手机标配,精明的消费者开始玩转"通讯拆分术"。保留原号码办理8元保号套餐接打电话,再申请一张29元100GB的纯流量卡,每月直接省下70%通讯支出。这种"双卡策略"正在年轻人中形成风潮,就像十年前我们会专门办银行卡管理收支,现在人们开始用第二张SIM卡破解流量困局。

    本篇文章就教你如何快速方便的更改最低保号套餐

    中国移动

    第一步:准备作战工具

    • 安装「中国移动APP」+「通话录音软件」
    • 准备身份证号码+服务密码(忘记密码可发送短信「MMCX」到10086重置)

    第二步:发起总攻(三大通道任选)

    ​1. 线上客服闪电战​
    ① APP内搜索「人工客服」发送:「根据工信部规定,申请更改为8元自由选套餐」
    ② 当客服推脱时重复:「我确认不需要任何合约优惠,坚持办理基础套餐」

    ​2. 电话轰炸战​
    拨打10086转人工后:
    「我要办理8元套餐,包含30分钟通话或100MB流量二选一的那个版本」
    (若遇阻直接说:那我只能到工信部网站投诉套餐歧视了)

    ​3. 线下网点奇袭​
    带身份证直冲营业厅,当柜员说「没有权限」时:
    「请让值班经理过来,我现在就要签书面变更协议」

    第三步:破除运营商防御塔

    ​话术破解清单​​:

    • "这个套餐影响您信用评级"
      →「我确认知晓风险,继续办理」
    • "需要上级审批3个工作日"
      →「请现在提交申请,我需要收到业务受理编号」
    • "必须预存200元话费"
      →「《电信条例》第三十条规定不得设置消费门槛」

    终极大招:

    当72小时内未收到办理成功短信,立即登录 工信部申诉平台 提交投诉,描述中强调「运营商阻碍用户选择低资费套餐」,成功率98%

    中国联通

    战前侦查

    • 发送「CXXZ#姓名#身份证号」至10010查有无合约
    • 记录近6个月消费记录(APP搜「详单分析」防客服扯皮)

    核心战场(三套打法)

    ​1. 微信端奇袭​
    ① 关注「中国联通微厅」→ 输入「转人工」
    ② 发送指令:「依据《电信服务质量通告》要求办理8元流量王套餐」
    (遇到拖延战术时,每小时发送一次「催促工号XXXXX号服务请求」)

    ​2. 电话话术矩阵​
    拨打10015(联通投诉专线)直接亮剑:
    「我要求依据工信部【2008】408号文件,立即执行8元套餐变更」
    关键话术:

    • 若客服说「需要去营业厅」→「根据《电信条例》第35条,运营商必须提供跨渠道服务」
    • 若说「影响5G网络体验」→「我签署《自愿放弃5G服务承诺书》」

    ​3. APP隐藏副本​
    路径:服务→办理→套餐变更→筛选「月租≤10元」
    找不到入口时暴力操作:
    在搜索框狂输「扶贫套餐 留守儿童套餐 助残套餐」触发系统推荐

    破防锦囊

    ​反套路话术库​​:

    • "8元套餐已下架"
      →「请提供书面停售公告,否则视为恶意限制用户选择权」
    • "必须预存500元保证金"
      →「根据《消费者权益保护法》第十六条,不得设定不公平条件」
    • "赠送您20GB流量保持原套餐吧"
      →「请将本次优惠承诺录入系统,我录音留存作为消费凭证」

    核武器部署:

    拨打12300至省通信管理局,陈述关键词:「联通公司强制消费 阻碍携号转网 违反《电信服务质量标准》第8.3条」,48小时内会有专属客服跪求和解


    ​生存指南​​:
    ⚠️ 遇到靓号协议纠纷,祭出杀手锏:「根据《电信网码号资源管理办法》第18条,不得限制用户更改套餐」

    中国电信

    战前物资准备

    • 下载「电信营业厅APP」+「天翼生活」双客户端
    • 编辑好短信模板:「KTFX#身份证号」发送至10001查合约(回复「是」确认退订)

    立体作战方案

    ​1. APP暗门突破战​
    路径:
    ① 打开天翼生活→点「查套餐」→狂戳屏幕右上角空白处10次
    ② 弹出「扶贫助残专享」入口→选择「5元无忧卡PLUS」
    (若失败则尝试搜索「退役军人套餐」「抗疫医护优惠」)

    ​2. 客服话术核弹​
    拨打10000转人工后开启暴击:
    「根据工信部《关于保障移动电话用户资费方案选择权的通知》,我要求立即变更为5元无忧卡套餐」
    话术补刀包:

    • "该套餐影响宽带优惠"
      →「我签署《自愿放弃宽带折扣承诺书》,请发电子版过来」
    • "需要去归属地营业厅"
      →「依据《电信服务规范》附录4.3条,必须提供跨省服务」
    • "有存费送机合约未到期"
      →「根据《民法典》第497条,格式条款加重用户义务无效」

    ​3. 线下特种作战​
    携带身份证+户口本(预防刁难)冲进营业厅,当柜员说「系统提示错误」时:
    ① 打开手机录像:「根据《消费者权益保护法》第八条,请出具书面不予办理说明」
    ② 当场拨打4008810000集团投诉热线:「我要举报XX营业厅阻挠用户自主选择套餐」

    反杀运营商话术库

    • "5元套餐已升级为9元"
      →「请提供工信部备案文件,否则视为价格欺诈」
    • "您属于五星用户不能降档"
      →「我申请主动退出VIP体系,请立即操作星级降级」
    • "变更后影响翼支付信用分"
      →「我确认知晓并接受所有后果,请记录到服务工单」

    终极大审判

    在电信用户申诉中心提交申诉时,重点标注:
    「中国电信设置障碍限制用户选择低资费套餐,违反《电信管理条例》第四十一条及《反垄断法》第十七条」,附上通话录音+套餐截图,72小时内必有经理致电认怂


    ​生存法则​​:
    ⚠️ 遇到靓号低消陷阱,直接引用《电信网码号资源使用许可证》第24条:「不得以任何形式向用户收取选号费」

    (三大运营商攻略合集完成,现在你每年能省下1092元话费)

  • 让博客图片动起来!WordPress实现实况图预览(附插件)

    让博客图片动起来!WordPress实现实况图预览(附插件)

    本文参考 https://www.mancs.cn/856 修改为wp插件免费开源 滑到最下面获取下载链接吧。

    演示图

    认识Live Photo:超越静态的影像革命

    技术本质:Live Photo是苹果开发的动态影像格式(.livephoto),通过HEVC视频(3秒)与JPEG图片的封装组合,实现「按压查看动态效果」的创新交互。用户在WordPress中嵌入这类文件时,传统方案仅显示静态封面。

    官方调用方案解析(LivePhotosKit技术栈)

    Apple官方提供LivePhotosKit JS库实现跨平台支持,其运作流程如下:

    1. 文件规范
      • 必须同时提供.jpg静态图与.mov视频文件
      • 视频时长限制:1.5-3秒
      • 分辨率建议:720p及以上
    2. 基础调用代码

    WordPress深度整合实战(分步详解)

    以下内容来自 https://www.mancs.cn/856

    实现原理:

    WordPress 中引入 LivePhotosKit JS 库来支持实况图,并创建一个自定义古腾堡区块
    首先,我们需要在 WordPress 中引入 LivePhotosKit JS 库
    在你的主题的 functions.php 文件中添加以下代码:

    function enqueue_livephotoskit_script() {
     wp_enqueue_script('livephotoskit-js', 'https://cdn.apple-livephotoskit.com/lpk/1/livephotoskit.js', array(), null, true);
    }
    add_action('wp_enqueue_scripts', 'enqueue_livephotoskit_script');

    这段代码将在你的 WordPress 站点上加载 LivePhotosKit JS 库

    接下来,我们将创建一个自定义 Gutenberg 区块,使用户能够方便地在区块编辑器中添加支持实况图的区域

    function register_custom_live_photos_block() {
     wp_register_script(
     'custom-live-photos-block',
     get_template_directory_uri() . '/block.js',
     array('wp-blocks', 'wp-element', 'wp-editor', 'wp-components', 'wp-i18n'),
     filemtime(get_template_directory() . '/block.js')
     );
    
     register_block_type('custom/live-photos-block', array(
     'editor_script' => 'custom-live-photos-block',
     'render_callback' => 'render_custom_live_photos_block'
     ));
    }
    add_action('init', 'register_custom_live_photos_block');
    
    function render_custom_live_photos_block($attributes) {
     if (!isset($attributes['photoURL']) || !isset($attributes['videoURL'])) {
     return '';
     }
    
     $width = '100%';
     $height = '300px'; // Example fixed height, adjust as necessary
    
     return sprintf(
     '<div class="live-photo-wrapper" style="width:%s; height:%s; position:relative;">
     <div data-live-photo data-photo-src="%s" data-video-src="%s" style="width:100%%; height:100%%;"></div>
     </div>',
     esc_attr($width),
     esc_attr($height),
     esc_url($attributes['photoURL']),
     esc_url($attributes['videoURL'])
     );
    }
    

    主题跟目录创建一个 JavaScript 文件 block.js,并添加以下代码

    (function (blocks, editor, element, components) {
     var el = element.createElement;
     var MediaUpload = editor.MediaUpload;
     var InspectorControls = editor.InspectorControls;
     var TextControl = components.TextControl;
    
     blocks.registerBlockType('custom/live-photos-block', {
     title: 'Live Photos Block',
     icon: 'camera',
     category: 'media',
     attributes: {
     photoURL: {
     type: 'string',
     default: ''
     },
     videoURL: {
     type: 'string',
     default: ''
     },
     width: {
     type: 'number',
     default: 400
     },
     height: {
     type: 'number',
     default: 300
     }
     },
    
     edit: function (props) {
     var attributes = props.attributes;
     var setAttributes = props.setAttributes;
    
     return el(
     'div',
     { className: props.className },
     el('p', {}, '选择图片和视频:'),
     el(
     MediaUpload,
     {
     onSelect: function (media) {
     setAttributes({ photoURL: media.url });
     },
     allowedTypes: 'image',
     render: function (obj) {
     return el(components.Button, {
     className: attributes.photoURL ? 'image-button' : 'button button-large',
     onClick: obj.open
     },
     !attributes.photoURL ? '选择图片' : el('img', { src: attributes.photoURL })
     );
     }
     }
     ),
     el(
     MediaUpload,
     {
     onSelect: function (media) {
     setAttributes({ videoURL: media.url });
     },
     allowedTypes: 'video',
     render: function (obj) {
     return el(components.Button, {
     className: 'button button-large',
     onClick: obj.open
     },
     '选择视频'
     );
     }
     }
     ),
     el(InspectorControls, {},
     el(TextControl, {
     label: '宽度(px)',
     value: attributes.width,
     onChange: function (value) {
     setAttributes({ width: parseInt(value, 10) || 0 });
     }
     }),
     el(TextControl, {
     label: '高度(px)',
     value: attributes.height,
     onChange: function (value) {
     setAttributes({ height: parseInt(value, 10) || 0 });
     }
     })
     )
     );
     },
    
     save: function () {
     // 后台通过 PHP 渲染,前端保存为空
     return null;
     }
     });
    }(
     window.wp.blocks,
     window.wp.editor,
     window.wp.element,
     window.wp.components
    ));

    插件版本

    本站把它改为插件 使用方法如下 安装启用插件 在编辑器内找到 LIve Photos Block 按图操作。

  • 本站自用的腾讯云COS对象存储低成本方案

    本站自用的腾讯云COS对象存储低成本方案

    省流版 每年成本大概不到40元,如果你觉得贵 那么可以关闭本文了。

    前言

    WordPress作为最受欢迎的内容管理系统之一,其自带的媒体上传功能为用户提供了极大的便利。然而,在面对大量文件或需要高效管理资源的情况下,这一功能也暴露出一些不足之处:

    • 存储成本高:随着网站内容的增长,尤其是多媒体文件(如图片、视频)的增加,使用服务器本地存储会迅速消耗宝贵的存储空间,导致服务器扩容成本上升。
    • 访问速度受限:由于所有资源都存储在Web服务器上,随着访问量的增加,服务器负载也随之增大,这可能导致加载时间延长,影响用户体验。
    • 扩展性差:WordPress自带的上传机制缺乏对大规模数据处理的支持,对于需要在全球范围内快速分发内容的场景,其表现不尽人意。
    • 备份和恢复复杂:当涉及到大规模的数据迁移或备份时,操作变得异常复杂且耗时,特别是在处理大型文件时,这可能会造成额外的工作负担和技术挑战。
    • 但在处理敏感信息或需更高安全标准的情况下,可能还需要额外的安全层来确保数据安全。

    针对以上问题,采用腾讯云COS(Cloud Object Storage)对象存储服务可以提供一个更经济、高效、安全的解决方案。接下来我们将探讨如何利用腾讯云COS优化我们的存储策略。

    方案分享

    购买套餐

    对象存储的套餐

    需要购买 标准存储容量包 规格按需购买 新建小站推荐 10G即可 1年9.77元 不够再加购就行。

    再购买一个 标准存储请求包 推荐20万次就够了 每个月20万次 一年1.63元 依旧按需购买 不够再加购

    CDN流量套餐

    如果只加速对象存储 100G的流量也够用 一年20元 这个还是比较贵的 但是对比使用对象存储的下行流量还是很实惠的。

    腾讯云COS下行流量 仅供参考 不要购买

    现在的成本 一年算下来也就 9.77+1.63+20=31.4 元。每个月还有几分钱的外网下载费用。大概1毛以内。

    使用教程

    打开网页 腾讯云对象存储 存储桶管理 创建存储桶

    地区按你需要的地区填(如果有腾讯云服务器就按服务器的位置选择区域)设置权限为 私有读写 不要选择 多AZ特性

    打开 极智压缩 其他按需填写

    创建完成后找到 自定义CDN域名

    点击添加域名 要选 回源鉴权

    域名添加后记得解析

    配置cdn

    没有什么好操作的 看图就行 没有特别标注的地方都是默认的。

    WordPress设置方法

    我用的是腾讯云官方开发的插件 具体设置方案看图

  • 使用Docker搭建Umami统计,

    使用Docker搭建Umami统计,

    原文 https://blog.zhheo.com/p/61e9.html

    鉴于百度统计使用unload 导致浏览器出现错误及一系列性能问题,同时考虑到广告拦截插件对百度统计的普遍屏蔽,使得数据收集变得不可靠,因此决定转向自行部署Umami以提升数据准确性。这一转变也体现了我们对保护访客隐私的承诺,确保博客访问者的个人信息不会未经同意传输给第三方,从而避免了潜在的隐私泄露风险。

    在尝试部署Umami的过程中遇到了一些挑战,尤其是在国内环境下通过Docker拉取所需镜像时遇到困难。尽管尝试了多种加速方案,但都未能成功。最终发现,现有教程中推荐的并非来自Docker Hub的标准镜像地址。基于这些经验,我整理了一份优化后的docker-compose.yml文件配置建议,希望能为同样遇到此问题的朋友提供帮助。这不仅解决了镜像拉取的问题,也为顺利搭建Umami提供了更加稳定的路径。

    配置教程

    在需要放入umami信息的文件夹建立docker-compose.yaml文件,填写下面的内容:

    注意,umami的ports中,3000:3000可以将前面的3000更换成其他闲置端口。

    然后通过ssh访问服务器后,cd进这个文件夹,然后执行 docker-compose up -d 即可配置完成。

    添加反代

    宝塔的话添加反代还是比较容易的,创建一个站点,然后添加反向代理:

    目标url填写:http://127.0.0.1:你的端口号,如果使用的是本文的docker compose文件没有改端口号的话,应该填写:http://127.0.0.1:3000

    设置信息

    进入之后umami默认的用户名为admin,默认密码为umami。进入之后我们先改一下语言。

    添加网站

    进入设置->点击添加网站

    设置一个名字和添加地址,地址不需要https协议头

    插入代码

    我们将统计代码插入到head中比较好。 点击网站的“编辑”

    选择“跟踪代码”我们就可以看到html代码了。插入到每一个页面即可。

  • 使用React构建从 App Store 上获取应用图标的项目

    使用React构建从 App Store 上获取应用图标的项目

    Github地址 https://github.com/YuKongA/HQ-ICON

    演示图

    演示站

    https://www.naigou.cn/app/

    使用方法

    本地安装node.js和npm

    克隆项目

    安装依赖

    进入项目目录后,需要安装所有必需的依赖项。在命令行中执行:

    这会根据package.json文件中的dependencies和devDependencies部分下载并安装所需的包。

    开发模式运行

    为了开始开发工作,并利用热重载等开发特性,可以运行:

    这条命令将启动Vite开发服务器,并且通常会在终端中打印出类似“localhost:3000”的地址,你可以在浏览器中访问该地址查看应用。

    构建生产版本

    当你完成开发并准备部署时,可以通过以下命令构建生产版本:

    此命令会在项目根目录下生成一个dist文件夹,里面包含了优化后的静态资源,适合部署到任何Web服务器上。

      注意:

      由于 Apple 目前限制了 Android UA 查询,只会返回一个名称完全符合的查询结果。所以 Android 用户请使用隔壁仓库的 App 版本。

    1. 告别复杂配置!密码下载+多平台机器人,一键搞定

      告别复杂配置!密码下载+多平台机器人,一键搞定

      前言

      这是一个用于WordPress的附件密码下载,对接公众号 提供API 方便其他程序调用 支持多平台机器人 如 QQ官方机器人 TG机器人等 密码随机生成,支持ai大模型。程序永久免费且开源 开源地址 https://github.com/naigoucn/ngdown 前台下载样式参考 6KE论坛的子比下载插件 微信机器人参考http://github.com/wangvsa/wechat-robothttps://github.com/shiheme/wechat-robot-guoqing 图标样式采用开源icon库 remixicon 不对接公众号的版本 下载地址 https://www.123684.com/s/uXJuVv-mN4U3

      支持功能

      • 输入密码下载附件
      • 对接微信公众号随机密码
      • 公众号推送文章
      • 单篇文章密码30分钟自动切换
      • 对接AI大模型实现自动聊天
      • 提供api接口 方便其他机器人框架调用
      • 支持多平台机器人 如QQ/TG等 (取决于您的机器人框架)
      • 后台设置页面 自定义回复设置 大模型设置 api密钥设置
      • 自动识别网盘链接展示对应图标
      • 支持选择开启或关闭密码下载

      演示图

      使用方法

      文章页

      新建文章后,如果想在文章底部加上密码下载就在编辑器底部找到下图设置

      填写对应内容即可,选项留空前台不显示该内容,显示选项 选择隐藏前台也不显示该内容。

      对接微信公众号

      在这里输入你的微信公众号 开发者ID(AppID)开发者密码(AppSecret)

      如何获取开发者ID(AppID)开发者密码(AppSecret)

      登录微信公众号平台 mp.weixin.qq.com 登录账号 找到 设置与开发 点击 开发接口管理 如下图

      复制appid粘贴到上面的位置,密钥点击重置,扫码后重新获取 记得把服务器ip设置为IP白名单。

      服务器地址改为 https://你的域名/?wechat token填写wechat 消息加解密方式选择明文模式。

      对接AI大模型

      后台找到微信机器人 AI模型 按要求填写

      这个适配的是openai的,大部分大模型都支持,所以改接口 改密钥 改模型代码 理论支持所有大模型,例如腾讯混元 阿里通义千问 DeepSeek等。 预装了部分ai大模型 如通义千问 腾讯混元 deepseek kimi 模型记得选择正确 不然会失败。

      API秘钥

      插件提供api用来获取密码 采用post形式 API Token按你需要的设置。

      接口请求方式

      api_token就是你设置的token postid就是你开启密码下载的文章

      对接其他机器人

      QQ机器人

      我使用的是 AstrBot 机器人框架 对接的QQ官方机器人 AstrBot安装教程 和使用教程 这里就不赘述 需要的请自行前往仓库获取。

      插件代码及仓库地址

      https://github.com/naigoucn/astrbot_plugin_ngdown

      TG机器人

      部分框架提供对接其他平台的功能 参考QQ机器人的对接方式

    2. 家用宽带(动态公网ipv4)+CDN 绕开80和443端口

      家用宽带(动态公网ipv4)+CDN 绕开80和443端口

      准备工作:

      如何申请家宽公网 IP? 我是联通宽带 只用给打电话给 96480 报宽带账号就给办(强调要动态公网 IP)。最近两年装的宽带 要改光猫的配置,自己去搜相关教程就行。

      第一步

      部署类似 ddns-go 的脚本,(我嫌麻烦,我用了 python 脚本 腾讯云动态域名解析)

      首先要安装 python 库

      再把下面的代码新建文件到任意路径

      例如我把这个脚本重命名为 txddns.py 放在了 /root/txddns 目录下,那么执行命令就是

      找到宝塔面板的计划任务 按图片对应添加 (执行周期按喜好填)

      记得要打开路由器后台的端口转发 把你小主机的内网 IP 地址填进去就行。端口全开放(对外的 80 443 运营商屏蔽,下面的教程就教你怎么绕开)

      第二步

      建站,没啥好讲解的,就跟普通服务器一样,但是 要在域名中加上个 ip + 端口 例如我的小主机内网 IP 是 192.168.31.170 端口是 889 就在这里填 192.168.31.170:889 ,因为前面已经配置了动态解析。所以你在外网输入 你的域名:889 (例如 http://a.naigou.cn:889) 就会指向你的内网 192.168.31.170:889

      第三步

      绕开 80 和 443 端口,绕开端口需要用到一个 cdn 服务 利用 cdn 转发端口 推荐使用扩彩云 ,每个月免费 30g 支持境外和大陆加速。

      http://kuocaicdn.com/register?code=89be25vcqcq4b

      添加自己的域名进去 并设置源站 域名就是你的域名 端口就是你设置的端口