普通视图

发现新文章,点击刷新页面。
昨天 — 2025年1月4日懋和道人
  • ✇懋和道人
  • 解决宝塔面板启用SSL后https窜站问题
    宝塔官方说法:在未指定 SSL 默认站点时,未开启 SSL 的站点使用 HTTPS 会直接访问到已开启 SSL 的站点使用宝塔面板的朋友,应该都遇到过所谓的“HTTPS窜站”问题。许多人在发现这个问题时,往往选择忽视,认为它不会带来太大影响,因此没有采取任何处理措施。然而,这种忽视行为实际上是极为危险的——不能抱有“无关紧要”的侥幸心理。通过这个漏洞,攻击者可能会利用它进行一系列潜在的恶意操作。首先,虽然窜站问题可能会影响SEO的收录,但更为严重的是,它会引发一系列安全隐患:最关键的是,你的源站IP地址有可能会被泄露,哪怕你已经启用了CDN加速,问题依然存在。那么,源站IP是如何泄露的呢?简而言之,攻击者可以通过直接访问服务器的IP地址(例如:https://你的服务器IP)来触发nginx返回默认的SSL证书。通过查看证书详情,攻击者就可以获取到与你站点相关的域名信息,从而定位到源站IP,这为进一步攻击提供了线索。接下来,本文将重点讲解如何修补这一“窜站”问题,防止源站IP泄露。使用宝塔面板的朋友,按照以下步骤操作即可有效防范。对于使用LNMP一键包或其他程序的朋友,也可以参考本指南
     

解决宝塔面板启用SSL后https窜站问题

2024年12月20日 22:03

宝塔官方说法:在未指定 SSL 默认站点时,未开启 SSL 的站点使用 HTTPS 会直接访问到已开启 SSL 的站点

image.png

使用宝塔面板的朋友,应该都遇到过所谓的“HTTPS窜站”问题。许多人在发现这个问题时,往往选择忽视,认为它不会带来太大影响,因此没有采取任何处理措施。然而,这种忽视行为实际上是极为危险的——不能抱有“无关紧要”的侥幸心理。通过这个漏洞,攻击者可能会利用它进行一系列潜在的恶意操作。

首先,虽然窜站问题可能会影响SEO的收录,但更为严重的是,它会引发一系列安全隐患:最关键的是,你的源站IP地址有可能会被泄露,哪怕你已经启用了CDN加速,问题依然存在。那么,源站IP是如何泄露的呢?简而言之,攻击者可以通过直接访问服务器的IP地址(例如:https://你的服务器IP)来触发nginx返回默认的SSL证书。通过查看证书详情,攻击者就可以获取到与你站点相关的域名信息,从而定位到源站IP,这为进一步攻击提供了线索。

接下来,本文将重点讲解如何修补这一“窜站”问题,防止源站IP泄露。使用宝塔面板的朋友,按照以下步骤操作即可有效防范。对于使用LNMP一键包或其他程序的朋友,也可以参考本指南进行相应的配置。

创建虚假站点

新建一个不存在的站点,域名填写为:default.default,提交,如下图:

image.png

删除创建好站点内的index.htnl和404.html

image.png

配置SSL证书

“密钥(KEY)”填:

-----BEGIN EC PRIVATE KEY-----
MIGkAgEBBDC/zr/8+7tnXWwC807kdbZQyxH/lRSpeRbHVgef7iE/CzWBk2uNiniq
WrFTdH0OiZGgBwYFK4EEACKhZANiAAT8Z1VwFf4SK0ND9Wi9x0BPfSiUbk+mPqtV
u/cUqBpqVi/ZzjLM7fmg5GtrDjyl625zkwmelkq50UdGGOdNt5NNM/CopQN94pHo
vHzOVFofBJ2mKKlHnsiVepLPMRWtSm4=
-----END EC PRIVATE KEY-----

“证书(PEM 格式)”填:

-----BEGIN CERTIFICATE-----
MIICIDCCAaWgAwIBAgIUMgE3+cV8+W132pIaJ28aM5LgblgwCgYIKoZIzj0EAwMw
YTELMAkGA1UEBhMCQ04xEjAQBgNVBAgMCUd1YW5nZG9uZzERMA8GA1UEBwwIU2hl
bnpoZW4xFTATBgNVBAoMDExYVFggTGltaXRlZDEUMBIGA1UEAwwLTFhUWCBFQ0Mg
Q0EwIBcNMjQxMTA2MDYyMDM3WhgPMjkxMjA0MDUwNjIwMzdaMBoxGDAWBgNVBAMM
D2RlZmF1bHQuZGVmYXVsdDB2MBAGByqGSM49AgEGBSuBBAAiA2IABPxnVXAV/hIr
Q0P1aL3HQE99KJRuT6Y+q1W79xSoGmpWL9nOMszt+aDka2sOPKXrbnOTCZ6WSrnR
R0YY5023k00z8KilA33ikei8fM5UWh8EnaYoqUeeyJV6ks8xFa1KbqNjMGEwHQYD
VR0OBBYEFDyru1xUJXruEpSsG+ELjE6pptQRMB8GA1UdIwQYMBaAFCsqoJBRV3yR
Nf+I2Wa3XqRNT+f7MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgKEMAoG
CCqGSM49BAMDA2kAMGYCMQDTe8nmFVoAPJorj1vsWbKQhHTv7CAXGJfvrIBlmnMe
h36QZDpGJWOA5G/wZGTvuKECMQDPU4HFeFTtFobaX+xGKTTvECoFbLT7ypBVV5Gb
fCtK9tC7O6kXp5m84e23YNI7x0g=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIICfjCCAgOgAwIBAgIUWcQINz6zaOfKQdQxHCsh3Vo8ZYMwCgYIKoZIzj0EAwMw
eDELMAkGA1UEBhMCQ04xEjAQBgNVBAgMCUd1YW5nZG9uZzERMA8GA1UEBwwIU2hl
bnpoZW4xFTATBgNVBAoMDExYVFggTGltaXRlZDEQMA4GA1UECwwHUm9vdCBDQTEZ
MBcGA1UEAwwQTFhUWCBFQ0MgUm9vdCBDQTAgFw0yNDExMDYwNjIwMThaGA8zMDIz
MDMxMDA2MjAxOFowYTELMAkGA1UEBhMCQ04xEjAQBgNVBAgMCUd1YW5nZG9uZzER
MA8GA1UEBwwIU2hlbnpoZW4xFTATBgNVBAoMDExYVFggTGltaXRlZDEUMBIGA1UE
AwwLTFhUWCBFQ0MgQ0EwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARicMexTSkZLApR
2Aoz8uji5V9l9lu1HRHhzozA6QZT2fh/d7+wBst0tYBcfWFdUUSbmJtQI2krNIEY
pY3CFER0jX6ZLWbCXE2BIG0KUnLd6YM+WLRm1LHTatvno1Mzq8CjYzBhMB0GA1Ud
DgQWBBQrKqCQUVd8kTX/iNlmt16kTU/n+zAfBgNVHSMEGDAWgBSdC8eWXdWX6Lqc
GBasWD4YXx0pwzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIChDAKBggq
hkjOPQQDAwNpADBmAjEAiOrOPY25Bo3hfBH8yTFFqpS4gVGfGRX8GVvKNHFL6Zj0
IUWn6SZonqWmwa02OAIZAjEAhHg2XfsIuKz4FtUahJVq+nSFUqjvu+aybQ9qqMLB
zeXvk9alWjjLPVOST3bjW2yF
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIClTCCAhqgAwIBAgIUBSppqMEOoTZx+r3U13Q+dJxpeUIwCgYIKoZIzj0EAwMw
eDELMAkGA1UEBhMCQ04xEjAQBgNVBAgMCUd1YW5nZG9uZzERMA8GA1UEBwwIU2hl
bnpoZW4xFTATBgNVBAoMDExYVFggTGltaXRlZDEQMA4GA1UECwwHUm9vdCBDQTEZ
MBcGA1UEAwwQTFhUWCBFQ0MgUm9vdCBDQTAgFw0yNDExMDYwNjIwMDBaGA8zMDI0
MDMwOTA2MjAwMFoweDELMAkGA1UEBhMCQ04xEjAQBgNVBAgMCUd1YW5nZG9uZzER
MA8GA1UEBwwIU2hlbnpoZW4xFTATBgNVBAoMDExYVFggTGltaXRlZDEQMA4GA1UE
CwwHUm9vdCBDQTEZMBcGA1UEAwwQTFhUWCBFQ0MgUm9vdCBDQTB2MBAGByqGSM49
AgEGBSuBBAAiA2IABKP/c6ZRSOHO7mwTqKZ/6ZwvBi+5drxa3F/akIeQTpl3PaBc
0GmZTflBat9xLYVs6+0nlncPrbfu00NuKwQU7+kKtamNnMXJtnGnmEBY+vMwfsa2
toPjAdLxU053fA4NsqNjMGEwHQYDVR0OBBYEFJ0Lx5Zd1ZfoupwYFqxYPhhfHSnD
MB8GA1UdIwQYMBaAFJ0Lx5Zd1ZfoupwYFqxYPhhfHSnDMA8GA1UdEwEB/wQFMAMB
Af8wDgYDVR0PAQH/BAQDAgKEMAoGCCqGSM49BAMDA2kAMGYCMQC8f5SDctE19Zpm
NhPsr54JkuhWKeUveWQdWQurHj6Ua1lnIErZjK3ytMPB8b+EGAUCMQCsd6Jc+LdS
+Gvdsvxaeccqjga3WifwsYk2V2TcEWUHwOSYKDwqmw5rNGshOmId1cA=
-----END CERTIFICATE-----

设置默认站点

image.png

校验配置结果

至此,所有设置已完成。接下来,访问https://你的服务器IP,如果浏览器提示如下所示(在“高级”选项中无法看到你服务器的域名),或者出现“403 Forbidden”错误,那么恭喜你,漏洞已经成功堵住!如果依然能够访问到你的网站,那么“恭喜你”,说明你的服务器仍然暴露在这个漏洞之下,赶紧修复吧!

image.png

虽然宝塔在版本V7.9.0中已修复了这个问题,从此版本开始,你可以在“网站 - 安全设置”中启用“HTTPS防窜站”功能;而在宝塔V8.0及以后版本中,则可以在“网站 - 高级设置”中找到并开启“HTTPS防窜站”选项。然而,值得注意的是,这一修复并不能完全防止源站IP的泄露,因此仍建议按照本文的方法进一步加强配置,以确保安全性。

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=3ot4m02sdou8k

  • ✇懋和道人
  • 巧用Cloudflare功能实现Z-BlogPHP智能AI摘要
    特别鸣谢@Mayx的鼎力支持,使小道实现了巧用Cloudflare功能实现Z-BlogPHP智能AI摘要的基本功能。思路https://mayx.eu.org/2024/07/03/ai-summary今日与大佬共同努力实现了运用Cloudflare的Workers与数据库实现Z-BlogPHP智能AI摘要的基本功能。步骤首先在Cloudflare的Workers选择AI,创建LLM App,部署之后,将下述代码粘贴再部署一遍。async function sha(str) {   const encoder = new TextEncoder();   const data = encoder.encode(str);   const hashBuffer = await crypto.subtle.digest("SHA-256", data);   const hashArray = Array.from(new Uint8Array(hashBuffer)); // convert buffer to byte array   const hashHex = hashArray
     

巧用Cloudflare功能实现Z-BlogPHP智能AI摘要

2024年12月16日 22:21

特别鸣谢@Mayx的鼎力支持,使小道实现了巧用Cloudflare功能实现Z-BlogPHP智能AI摘要的基本功能。

思路

https://mayx.eu.org/2024/07/03/ai-summary

今日与大佬共同努力实现了运用Cloudflare的Workers与数据库实现Z-BlogPHP智能AI摘要的基本功能。

步骤

首先在Cloudflare的Workers选择AI,创建LLM App,部署之后,将下述代码粘贴再部署一遍。

async function sha(str) {
  const encoder = new TextEncoder();
  const data = encoder.encode(str);
  const hashBuffer = await crypto.subtle.digest("SHA-256", data);
  const hashArray = Array.from(new Uint8Array(hashBuffer)); // convert buffer to byte array
  const hashHex = hashArray
    .map((b) => b.toString(16).padStart(2, "0"))
    .join(""); // convert bytes to hex string
  return hashHex;
}

export default {
  async fetch(request, env, ctx) {
    const db = env.blog_summary;
    const url = new URL(request.url);
    const query = decodeURIComponent(url.searchParams.get('id'));
    const commonHeader = {
      'Access-Control-Allow-Origin': '*',
      'Access-Control-Allow-Methods': "*",
      'Access-Control-Allow-Headers': "*",
      'Access-Control-Max-Age': '86400',
    }
    if (query == "null") {
      return new Response("id cannot be none", {
        headers: {
          'Access-Control-Allow-Origin': '*',
          'Access-Control-Allow-Methods': "*",
          'Access-Control-Allow-Headers': "*",
          'Access-Control-Max-Age': '86400',
        }
      });
    }
    if (url.pathname.startsWith("/summary")) {
      let result = await db.prepare(
        "SELECT content FROM blog_summary WHERE id = ?1"
      ).bind(query).first("content");
      if (!result) {
        return new Response("No Record", {
          headers: commonHeader
        });
      }

      const messages = [
        {
          role: "system", content: `
          你是一个专业的文章摘要助手。你的主要任务是对各种文章进行精炼和摘要,帮助用户快速了解文章的核心内容。你读完整篇文章后,能够提炼出文章的关键信息,以及作者的主要观点和结论。
          技能
            精炼摘要:能够快速阅读并理解文章内容,提取出文章的主要关键点,用简洁明了的中文进行阐述。
            关键信息提取:识别文章中的重要信息,如主要观点、数据支持、结论等,并有效地进行总结。
            客观中立:在摘要过程中保持客观中立的态度,避免引入个人偏见。
          约束
            输出内容必须以中文进行。
            必须确保摘要内容准确反映原文章的主旨和重点。
            尊重原文的观点,不能进行歪曲或误导。
            在摘要中明确区分事实与作者的意见或分析。
          提示
            不需要在回答中注明摘要(不需要使用冒号),只需要输出内容。
          格式
            你的回答格式应该如下:
              这篇文章介绍了<这里是内容>
          ` },
        { role: "user", content: result.substring(0, 5000) }
      ]

      const stream = await env.AI.run('@cf/qwen/qwen1.5-14b-chat-awq', {
        messages,
        stream: true,
      });

      return new Response(stream, {
        headers: {
          "content-type": "text/event-stream; charset=utf-8",
          'Access-Control-Allow-Origin': '*',
          'Access-Control-Allow-Methods': "*",
          'Access-Control-Allow-Headers': "*",
          'Access-Control-Max-Age': '86400',
        }
      });
    } else if (url.pathname.startsWith("/get_summary")) {
      const orig_sha = decodeURIComponent(url.searchParams.get('sign'));
      let result = await db.prepare(
        "SELECT content FROM blog_summary WHERE id = ?1"
      ).bind(query).first("content");
      if (!result) {
        return new Response("no", {
          headers: commonHeader
        });
      }
      let result_sha = await sha(result);
      if (result_sha != orig_sha) {
        return new Response("no", {
          headers: commonHeader
        });
      } else {
        let resp = await db.prepare(
          "SELECT summary FROM blog_summary WHERE id = ?1"
        ).bind(query).first("summary");
        if (resp) {
          return new Response(resp, {
            headers: commonHeader
          });
        } else {
          const messages = [
            {
              role: "system", content: `
          你是一个专业的文章摘要助手。你的主要任务是对各种文章进行精炼和摘要,帮助用户快速了解文章的核心内容。你读完整篇文章后,能够提炼出文章的关键信息,以及作者的主要观点和结论。
          技能
            精炼摘要:能够快速阅读并理解文章内容,提取出文章的主要关键点,用简洁明了的中文进行阐述。
            关键信息提取:识别文章中的重要信息,如主要观点、数据支持、结论等,并有效地进行总结。
            客观中立:在摘要过程中保持客观中立的态度,避免引入个人偏见。
          约束
            输出内容必须以中文进行。
            必须确保摘要内容准确反映原文章的主旨和重点。
            尊重原文的观点,不能进行歪曲或误导。
            在摘要中明确区分事实与作者的意见或分析。
          提示
            不需要在回答中注明摘要(不需要使用冒号),只需要输出内容。
          格式
            你的回答格式应该如下:
              这篇文章介绍了<这里是内容>
          ` },
            { role: "user", content: result.substring(0, 5000) }
          ]

          const answer = await env.AI.run('@cf/qwen/qwen1.5-14b-chat-awq', {
            messages,
            stream: false,
          });
          resp = answer.response
          await db.prepare("UPDATE blog_summary SET summary = ?1 WHERE id = ?2")
            .bind(resp, query).run();
          return new Response(resp, {
            headers: commonHeader
          });
        }
      }
    } else if (url.pathname.startsWith("/is_uploaded")) {
      const orig_sha = decodeURIComponent(url.searchParams.get('sign'));
      let result = await db.prepare(
        "SELECT content FROM blog_summary WHERE id = ?1"
      ).bind(query).first("content");
      if (!result) {
        return new Response("no", {
          headers: commonHeader
        });
      }
      let result_sha = await sha(result);
      if (result_sha != orig_sha) {
        return new Response("no", {
          headers: commonHeader
        });
      } else {
        return new Response("yes", {
          headers: commonHeader
        });
      }
    } else if (url.pathname.startsWith("/upload_blog")) {
      if (request.method == "POST") {
        const data = await request.text();
        let result = await db.prepare(
          "SELECT content FROM blog_summary WHERE id = ?1"
        ).bind(query).first("content");
        if (!result) {
          await db.prepare("INSERT INTO blog_summary(id, content) VALUES (?1, ?2)")
            .bind(query, data).run();
          result = await db.prepare(
            "SELECT content FROM blog_summary WHERE id = ?1"
          ).bind(query).first("content");
        }
        if (result != data) {
          await db.prepare("UPDATE blog_summary SET content = ?1, summary = NULL WHERE id = ?2")
            .bind(data, query).run();
        }
        return new Response("OK", {
          headers: commonHeader
        });
      } else {
        return new Response("need post", {
          headers: commonHeader
        });
      }
    } else {
      return Response.redirect("https://www.dao.js.cn", 302)
    }
  }
}

其次创建数据库,选择D1 SQL数据库,创建表id、content、summary。将数据库与上面部署的Workers关联,至于此后端完全完毕。

前端

Z-BlogPHP的前端主题各式各样,无法做到完全统一,但是获取文章相应三个数据的值是一样的,我也做过纯文本输出优化。如下

var ai_title = `{$article.Title}`;
var ai_content = `{php}
$intro = $article->Content;
$intro = preg_replace('/<([a-zA-Z0-9]+)[^>]*class=["\'][^"\']*(zbaudioplugin|mochu_bill_page_div|gave)[^"\']*["\'][^>]*>.*?<\/\1>/is', '', $intro);
$intro = preg_replace('/<((video|audio|iframe|source)[^>]*>.*?<\/\2>|embed[^>]*>)/is', '', $intro);
$intro = preg_replace('/<script[^>]*?>.*?<\/script>/is', '', $intro);
$intro = preg_replace('/<img[^>]+\>/i', '', $intro);
$intro_text = strip_tags($intro);
$intro_text = str_replace(array("\r", "\n"), '', $intro_text);
$intro_text = str_replace('`', '', $intro_text);
$intro_text = str_replace('&nbsp;', ' ', $intro_text);
echo addslashes($intro_text);
{/php}`;
var ai_post_id = `{$article.ID}`;

具体的前端要怎么写,想实现什么样子,可以根据我页面的/sucai/js/wenzhang.js实现。至此,基本完毕,再次鸣谢@Mayx的鼎力支持,福生无量天尊。

  • ✇懋和道人
  • 懋和道人2024年终总结及未来展望
    转眼间,岁月如流水般悄然流逝,旧的一年即将落幕,新的一年也已悄然步入眼前。自2011年起,我便开始独立投入道教互联网事业的探索与发展。多年来,我秉承道教“道法自然”的理念,致力于从道教数字化、"互联网+道教"的创新应用、道教互联网支持产权的多重维度,推动道教文化在互联网时代的传承与创新。期间,我积极参与了多个道教互联网产品的创新与优化,力求通过现代科技为道教注入新的活力。在这条不平凡的道路上,许多人给予了我无私的帮助与支持,正是他们的指引与鼓励,使我在技术层面实现了质的飞跃。同时,在道教文化的传播与发展上,我也收获了令人欣喜的成果。过去的岁月,虽有辛劳与挑战,但也充满了感恩与成长。展望未来,我将继续秉持道教精神,勇敢迎接新的机遇与挑战,推动道教互联网事业再上新台阶。2024年的主要发展动态互联网方面自己的博客域名从lizhichen.cn变更为dao.js.cn;截止到本文发布日总访问数911983人次;文章总数11496篇;评论数15811条,其中博客文章的总字数突破260万字。根据《语文课程标准》规定的阅读量,初中生的阅读量应该不少于260万字,260万字相当于51本教科书。htt
     

懋和道人2024年终总结及未来展望

2024年12月14日 17:34

转眼间,岁月如流水般悄然流逝,旧的一年即将落幕,新的一年也已悄然步入眼前。自2011年起,我便开始独立投入道教互联网事业的探索与发展。多年来,我秉承道教“道法自然”的理念,致力于从道教数字化、"互联网+道教"的创新应用、道教互联网支持产权的多重维度,推动道教文化在互联网时代的传承与创新。期间,我积极参与了多个道教互联网产品的创新与优化,力求通过现代科技为道教注入新的活力。

在这条不平凡的道路上,许多人给予了我无私的帮助与支持,正是他们的指引与鼓励,使我在技术层面实现了质的飞跃。同时,在道教文化的传播与发展上,我也收获了令人欣喜的成果。过去的岁月,虽有辛劳与挑战,但也充满了感恩与成长。展望未来,我将继续秉持道教精神,勇敢迎接新的机遇与挑战,推动道教互联网事业再上新台阶。

2024年的主要发展动态

互联网方面

image.png

自己的博客域名从lizhichen.cn变更为dao.js.cn;截止到本文发布日总访问数911983人次;文章总数11496篇;评论数15811条,其中博客文章的总字数突破260万字。根据《语文课程标准》规定的阅读量,初中生的阅读量应该不少于260万字,260万字相当于51本教科书。

https://www.dao.js.cn/new/2024061611335.shtml


随着互联网的迅猛发展,我的名号如同 “热销商品”,频频被小妖们模仿。那些不法分子,竟敢与我同名,诸如 “懋和道人”、“李至臣”,简直是如同山中小妖,胆大包天!这真是 “道有不测风云”,让我深感 “世道之乱” 的无奈。我的微信公众号与博客同步,内容将为大家分享道教智慧、修行心得,以及生活中的趣事。

https://www.dao.js.cn/new/2024092011438.shtml

知识产权固化

image.png

包括博客头像在内的13个设计图片及摄影、懋和道人抄经字体包全部实现了知识产权固化。然近年来见道教经典在电子化进程中,因字体缺失、讳字不全,致使许多珍贵的道藏典籍未能得到妥善的保护与传承,内心不免感到忧虑。

https://www.dao.js.cn/new/2024101911472.shtml

除了主要《懋和道人经书字体包》的知识产权固化,我对我自己的李懋和头像;李至臣、李懋和中山装、道装摄影;伍林堂三个标识;云道的三个标识及本博客内出现的几个背景图片也全部做了知识产权固化保护处理。

https://aiqicha.baidu.com/company_detail_53356354079166?tab=certRecord

文化作品、见解

我在今年年初到现在创作了不少诗词歌赋、文言文、论述,在博客的“作品”和“道学”栏目均可浏览。

https://www.dao.js.cn/zuopin

https://www.dao.js.cn/taoisms

浓烈的宗教背景诗词歌赋、文言文、论述作品,能够极力地抒发出我对中国道教这门学问的热爱之心。不管在何时何地,正因为我浓烈的道教宗教色彩,总能在各个领域仅凭短短诗句、小小论述就能衬托出微妙的道教色彩。也是如此,在我的朋友圈中,多的亦是道友、鲜有杂沓之余地。

道教文化具体推广与传承

今年内,我一共亲自参与了179场度亡生方事道场;32场阴阳两利平安道场;组织举办了甲辰年化解太岁专场法会;三元赐福、消灾、解厄的三场法会。同时,在做道场的闲暇之余也不忘更新互联网的动态,主动公布了自己的师承关系图,在目前的互联网大环境下,我也是首例敢于公示自己师承关系图的所谓教职人员。我曾经说过:当今社会,数字化科技已经深刻渗透到各行各业,宗教领域亦不例外。数字化科技的普及为传统宗教带来了新的可能性,本文将聚焦于道教,探讨数字化科技在其宗教建设中的应用。在日新月异的新时代发展宏观下,敢于传播、真实传承,才是宗教发展趋势的刚需。

https://www.dao.js.cn/lijiadao

未来的发展及总结

言不赘述。往年的发展历程,历历在目。幸好,我有写博客记录自己的一习惯,回顾这一年,我的修行如何、阅历如何,我还能随时翻阅、独自回顾。许多网友常说我写的东西太杂、太多、太复杂、太累赘。我想说,哪有人生是不复杂、不累赘的?如果生命能如愿顺利地生下来,便能活下去。那么,我们就不必先学会吃奶,再学会咬文嚼字了。人生的每一天,都是一帧帧珍贵的缩影,怎能不复杂、不杂?如果一切都活得简单、赚得轻松,人人平等,人生岂不失去乐趣?

对道教而言,2024年本质上是充满挑战与机遇的一年。这一年,我们见证了道教界的团结与奋进,见证了道友们的拼搏与奉献。与去年一样,越来越多的道教人士投身于互联网建设、数字化进程以及国际化推广工作中,推动道教文化的传播更为广泛与深入。同时,也有许多道教界的朋友虚心向我请教,寻求推动道教互联网化及数字化建设的建议。

这一年,我亲眼见证了无数为道教事业倾力奉献的先贤与同仁,他们是当之无愧的时代英雄。正是他们以坚定信念与无私奉献,推动着中华文化的传承与道教精神的弘扬。我由衷感激每一位在背后默默耕耘的同道,正是你们的辛勤付出与坚守,才有了道教事业的不断进步。在此,让我们携手并肩,继续奋勇前行,共同开创更加光辉灿烂的未来。

展望未来,我充满信心与期待。在新的一年里,我将进一步坚定信仰,稳步前行,紧紧抓住数字化宗教体系建设这一关键举措,积极推动国际宗教中国化战略的深入实施。同时,我将继续深入挖掘和传承道教文化,广泛弘扬道教精神,致力于为现代社会提供深厚的精神滋养与文化支持。相信在广大道教界人士与信众的共同努力下,我必能携手推动道教事业迈向新的高度,为社会的进步与发展贡献更大的力量。

华阳洞侍香道子懋和道人二〇二四年尾月

❌
❌