<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>建站 on Astarry技术日记</title>
        <link>http://cccc.astarry.cn/tags/%E5%BB%BA%E7%AB%99/</link>
        <description>Recent content in 建站 on Astarry技术日记</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh</language>
        <lastBuildDate>Fri, 17 Jan 2025 01:00:00 +0800</lastBuildDate><atom:link href="http://cccc.astarry.cn/tags/%E5%BB%BA%E7%AB%99/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>WordPress使用ssl证书提示引用了HTTP资源，降级为B</title>
            <link>http://cccc.astarry.cn/p/acddcbdb-908f-4977-a50c-258331b110e3/</link>
            <pubDate>Fri, 17 Jan 2025 01:00:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/acddcbdb-908f-4977-a50c-258331b110e3/</guid>
            <description>&lt;p&gt;遇到个莫名其妙的问题，我整了个WordPress站点，明明已经开启了HTTPS，但是一旦用手机访问，就无法使用https。&lt;br&gt;&#xA;使用SSL检测，提示我引用了不安全的HTTP资源，降级为B。&lt;/p&gt;&#xA;&lt;p&gt;手机进入站点，就提示不安全。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/提示不安全.jpg&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;但实际上，已经使用了https，并且部署好了SSL证书。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/显然开启了https.jpg&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;最后是进入网站查看网页源码，发现确实引用了一个http资源。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/源码中查看.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;是WP模板的一个link标签，具体功能可以自己去搜索看看。&lt;/p&gt;&#xA;&lt;p&gt;我使用的是Argon主题，所以直接在主题文件夹中的header.php修改一下即可。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/修改http.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;在此处将http修改为https即可。&lt;/p&gt;&#xA;&lt;p&gt;修改好后，再检测一下看看。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/检测为A.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;手机打开也能正常显示一把小锁了。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/正常了.jpg&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;总结&#34;&gt;总结：&#xA;&lt;/h4&gt;&lt;p&gt;这是WP模板里的一个link标签引起的错误，只需要将http修改为https即可。&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>鸡仔云内网穿透开启https访问配置示例</title>
            <link>http://cccc.astarry.cn/p/6e6396ce-5e7e-457e-a71c-d0dd003e5711/</link>
            <pubDate>Sat, 02 Nov 2024 16:55:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/6e6396ce-5e7e-457e-a71c-d0dd003e5711/</guid>
            <description>&lt;p&gt;鸡仔云frp的官方文档还没有全部完成，以至于有些人不明白如何开启https。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/还没完成的官方文档.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;下面我会写个示例，直接按照自己的需要修改一下即可。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;[隧道名称]&#xA;type = https&#xA;custom_domains = 域名&#xA; &#xA;plugin = https2http&#xA;plugin_local_addr = 内网IP:端口&#xA; &#xA;# HTTPS 证书相关的配置&#xA;plugin_crt_path = 证书存放位置&#xA;plugin_key_path = 密钥存放位置&#xA;plugin_host_header_rewrite = 内网IP&#xA;plugin_header_X-From-Where = frp&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;这样就能成功开启https访问了。&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>利用1panel快速安装并配置maddy server，搭建属于自己的邮局系统</title>
            <link>http://cccc.astarry.cn/p/15ad769a-cd2b-43d4-bea0-002b9b814ffe/</link>
            <pubDate>Fri, 01 Nov 2024 20:19:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/15ad769a-cd2b-43d4-bea0-002b9b814ffe/</guid>
            <description>&lt;p&gt;搭建maddy server其实非常简单，跟着教程一步一步来就行了，很快你就会拥有一个属于自己的域名邮箱。&lt;/p&gt;&#xA;&lt;h2 id=&#34;1准备工作&#34;&gt;1、准备工作&#xA;&lt;/h2&gt;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;一个域名（提前申请好SSL证书）&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;一台开放25端口的云服务器&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;安装好1panel&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4 id=&#34;12申请域名的ssl证书&#34;&gt;1.2、申请域名的ssl证书&#xA;&lt;/h4&gt;&lt;p&gt;使用1panel申请域名的SSL证书即可。&lt;/p&gt;&#xA;&lt;h4 id=&#34;13检查25端口是否开放&#34;&gt;1.3、检查25端口是否开放&#xA;&lt;/h4&gt;&lt;pre&gt;&lt;code&gt;telnet smtp.qq.com 25&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;如果提示类似如下，就证明你的服务器开放了25端口的出口。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/25端口开放.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;如果一直没反应，或者提示超时就意味着你的服务器没有开放25端口，可以考虑发送工单或者更换服务商。&lt;/p&gt;&#xA;&lt;h4 id=&#34;14创建docker存储卷&#34;&gt;1.4、创建Docker存储卷&#xA;&lt;/h4&gt;&lt;p&gt;终端输入：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;#创建docker存储卷&#xA;docker volume create maddydata&#xA;#进入docker存储卷目录&#xA;cd $(docker volume inspect maddydata --format &#39;{{.Mountpoint}}&#39;)&#xA;#创建证书文件夹&#xA;mkdir -p tls&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h4 id=&#34;15申请ssl证书&#34;&gt;1.5、申请SSL证书&#xA;&lt;/h4&gt;&lt;p&gt;使用1panel申请SSL证书并且直接推送至刚才创建的文件夹目录中。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/利用1panel申请SSL证书.png&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;2安装配置maddy-server&#34;&gt;2、安装配置Maddy Server&#xA;&lt;/h2&gt;&lt;p&gt;前面的准备都做好了之后，就可以开始安装Maddy Server了。&lt;/p&gt;&#xA;&lt;h4 id=&#34;21安装maddy-server&#34;&gt;2.1、安装Maddy Server&#xA;&lt;/h4&gt;&lt;p&gt;安装非常简单，只需要进入1panel应用商店页面，找到Maddy 点击安装即可。&lt;/p&gt;&#xA;&lt;h4 id=&#34;22设置dkim-dns解析&#34;&gt;2.2、设置DKIM DNS解析&#xA;&lt;/h4&gt;&lt;p&gt;当容器正常运行后，在/var/lib/docker/volumes/maddydata/_data/dkim_keys路径下会有一个后缀为.dns的文件&lt;br&gt;&#xA;其中就有我们需要的相关信息。&lt;/p&gt;&#xA;&lt;p&gt;终端输入：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;#请将example.com替换成自己的域名。&#xA;cat /var/lib/docker/volumes/maddydata/_data/dkim_keys/example.com_default.dns&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/DIKM%20dns.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;根据获取的信息设置DNS解析。&lt;/p&gt;&#xA;&lt;p&gt;如：&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/DIKM的DNS解析.png&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;23设置dns解析&#34;&gt;2.3、设置DNS解析&#xA;&lt;/h4&gt;&lt;p&gt;以下出现的example.com都需要替换成自己的域名&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;&lt;/th&gt;&#xA;          &lt;th&gt;&lt;/th&gt;&#xA;          &lt;th&gt;&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;记录类型&lt;/td&gt;&#xA;          &lt;td&gt;主机记录&lt;/td&gt;&#xA;          &lt;td&gt;值&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;A&lt;/td&gt;&#xA;          &lt;td&gt;mail&lt;/td&gt;&#xA;          &lt;td&gt;服务器IP地址&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;A&lt;/td&gt;&#xA;          &lt;td&gt;@&lt;/td&gt;&#xA;          &lt;td&gt;服务器IP地址&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;MX&lt;/td&gt;&#xA;          &lt;td&gt;@&lt;/td&gt;&#xA;          &lt;td&gt;mail.example.com&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;TXT&lt;/td&gt;&#xA;          &lt;td&gt;mail&lt;/td&gt;&#xA;          &lt;td&gt;v=spf1 mx ~all&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;TXT&lt;/td&gt;&#xA;          &lt;td&gt;@&lt;/td&gt;&#xA;          &lt;td&gt;v=spf1 mx ~all&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;TX&lt;/td&gt;&#xA;          &lt;td&gt;_dmarc&lt;/td&gt;&#xA;          &lt;td&gt;v=DMARC1; p=quarantine; ruf=mailto:postmaster@example.com&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;TX&lt;/td&gt;&#xA;          &lt;td&gt;_mta-sts&lt;/td&gt;&#xA;          &lt;td&gt;v=STSv1; id=1&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;TX&lt;/td&gt;&#xA;          &lt;td&gt;_smtp._tls&lt;/td&gt;&#xA;          &lt;td&gt;v=TLSRPTv1;rua=mailto:postmaster@example.com&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;解析完毕后，就可以连接容器进入容器终端创建账户了。&lt;/p&gt;&#xA;&lt;h4 id=&#34;24创建邮件账户&#34;&gt;2.4、创建邮件账户&#xA;&lt;/h4&gt;&lt;pre&gt;&lt;code&gt;#将example.com替换为自己的域名&#xA;#创建用户，用于登录时的验证&#xA;maddy creds create postmaster@example.com&#xA;#创建本地存储账户&#xA;maddy imap-acct create postmaster@example.com&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;可以查看一下是否创建成功&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;maddy  creds list&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/查看用户.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;到此，maddy邮局系统已经安装完毕了，接下来就是登录邮箱了，很多邮箱软件都支持第三方账号登录，接下来我将会用Thunderbird展示如何登录邮箱账号。&lt;/p&gt;&#xA;&lt;h2 id=&#34;3登录邮箱&#34;&gt;3、登录邮箱&#xA;&lt;/h2&gt;&lt;p&gt;打开Thunderbird软件，添加账户-选择手动配置。&lt;br&gt;&#xA;填写如下：&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/登录信息.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;填写自己的域名点击完成即可。&lt;/p&gt;&#xA;&lt;h4 id=&#34;31测试发送邮件&#34;&gt;3.1、测试发送邮件&#xA;&lt;/h4&gt;&lt;p&gt;可以直接发送一封邮件给自己就可以测试邮件是否正常。&lt;/p&gt;&#xA;&lt;h4 id=&#34;32设置rdns&#34;&gt;3.2、设置rDNS&#xA;&lt;/h4&gt;&lt;p&gt;我是使用的华为云，华为云服务器设置rDNS可以直接在“云解析DNS”中，选择反向解析。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/反向解析.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;在这里创建反向解析，将ip关联上邮箱域名即可。&lt;/p&gt;&#xA;&lt;p&gt;如果是其他云服务商，可以发送工单询问如何设置rDNS。&lt;/p&gt;&#xA;&lt;h2 id=&#34;4结束&#34;&gt;4、结束&#xA;&lt;/h2&gt;&lt;p&gt;至此，邮局系统已经搭建完毕，可以愉快的使用属于自己的邮箱了。&lt;/p&gt;&#xA;&lt;p&gt;如果有什么疑问，或者有什么问题，可以联系我。&lt;br&gt;&#xA;我会尽力解答的！&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>写了个小脚本，方便家宽ipv6配合CDN建站。（失控CDN）</title>
            <link>http://cccc.astarry.cn/p/7d513ae1-9110-4118-8e47-f32902a84792/</link>
            <pubDate>Fri, 01 Nov 2024 18:36:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/7d513ae1-9110-4118-8e47-f32902a84792/</guid>
            <description>&lt;p&gt;因为家庭宽带的ipv6会不停变动，所以即便是使用CDN搭配建站，也要很频繁的修改CDN控制台里的IPV6地址。&lt;br&gt;&#xA;所有为了方便，写了个py脚本，自动检测ipv6地址是否有变化，如果有就自动提交到CDN控制台。&lt;/p&gt;&#xA;&lt;p&gt;需要使用python3，所以需要安装好。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sudo apt install python3&#xA;&#xA;root@astarry:/# python3 --version&#xA;Python 3.8.10&#xA;&#xA;&#xA;#就OK了。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;记得先开启失控CDN的api功能。&lt;/p&gt;&#xA;&lt;p&gt;1、脚本&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;import requests&#xA;import json&#xA;import requests&#xA;import time&#xA;url = &#39;https://user.cdn1.vip/v1/sites/****&#39;  ##***填入CDN的网站ID&#xA;&#xA;def getIPv6Address():&#xA;    text = requests.get(&#39;https://v6.ident.me&#39;).text&#xA;    return text&#xA;&#xA;&#xA;if __name__ == &amp;quot;__main__&amp;quot;:&#xA;    print(getIPv6Address())&#xA;&#xA;&#xA;lastAddress=&amp;quot;&amp;quot;&#xA;while True:&#xA;    ipAddress = getIPv6Address()&#xA;    data = {&#xA;   &amp;quot;backend&amp;quot;: [{&amp;quot;index&amp;quot;: 0, &amp;quot;state&amp;quot;: &amp;quot;up&amp;quot;, &amp;quot;addr&amp;quot;: ipAddress, &amp;quot;weight&amp;quot;: &amp;quot;1&amp;quot;}]&#xA;}&#xA;    headers={&#xA;    &amp;quot;api-key&amp;quot;: &amp;quot;&amp;quot;,  ##填入自己的api key&#xA;    &amp;quot;api-secret&amp;quot;: &amp;quot;&amp;quot; ##填入自己的api secret&#xA;}&#xA;    if lastAddress!=ipAddress:&#xA;        response = requests.put(url, data=json.dumps(data),headers=headers)&#xA;        print(response.json())&#xA;        lastAddress=ipAddress&#xA;        time.sleep(60)&#xA;    else:&#xA;        print(&amp;quot;IP地址未发生变化&amp;quot;)&#xA;        time.sleep(60)&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;ps:此脚本只会修改CDN的源站IP地址，且只能用于IPV6。&lt;/p&gt;&#xA;&lt;p&gt;2、使用systemd作为服务运&lt;/p&gt;&#xA;&lt;p&gt;使用文本编辑器（如vim）在 /etc/systemd/system 目录下创建一个 cdn.service 文件，用于配置此脚本服务。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sudo vim /etc/systemd/system/cdn.service&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;写入内容：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;[Unit]&#xA;Description=cdn server&#xA;Afteer=network.target&#xA;Wants=network.target&#xA;&#xA;[Service]&#xA;Type=simple&#xA;#启动脚本的命令，需要替换成脚本的存放位置。&#xA;ExecStart=/usr/bin/python3 /home/astarry/123/cdn.py  &#xA;Restart=always&#xA;&#xA;[Install]&#xA;WantedBy=multi-user.target&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;保存退出即可。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;#启动&#xA;systemctl start cdn&#xA;#重启&#xA;systemctl restart cdn&#xA;#查看cdn状态&#xA;systemctl status cdn   &#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;3、将cdn.service设置开机自启&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;systemctl enable cdn&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;这样就不用担心光猫重启，或者断网重连导致ipv6变动，CDN无法访问到源站的情况了。&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>NAT服务器搭配CDN创建halo博客系统</title>
            <link>http://cccc.astarry.cn/p/67d8c895-042c-452c-94c8-fd6031f94dde/</link>
            <pubDate>Sat, 01 Jun 2024 16:03:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/67d8c895-042c-452c-94c8-fd6031f94dde/</guid>
            <description>&lt;p&gt;最近在市面上看到好多NAT服务器，在同等配置下NAT服务器价格相比起普通云服务器会便宜很多。&lt;br&gt;&#xA;因为通常云服务器都是拥有独立IPV4的，而NAT服务器却是共享IP只有数个或者数十个转发端口。&lt;br&gt;&#xA;今天就来玩一下NAT服务器搭配CDN创建halo个人博客网站。&lt;/p&gt;&#xA;&lt;h3 id=&#34;说明&#34;&gt;说明：&#xA;&lt;/h3&gt;&lt;p&gt;halo博客系统支持docker、docker-compose、jar等等方式部署。本文使用ar方式部署。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;一台NAT服务器&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;ssh工具&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;java环境&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;mysql数据库&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;1配置环境&#34;&gt;1、配置环境&#xA;&lt;/h2&gt;&lt;p&gt;由于使用jar方式部署halo需要使用到java环境，所以需要安装java环境。&lt;/p&gt;&#xA;&lt;p&gt;第一步，先使用ssh工具连接NAT服务器。&lt;br&gt;&#xA;注意：由于NAT服务器是共享IP，所以会有端口转发，需要看清楚自己的NT服务器地址和端口分别是什么。比如我的就是63982&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/查看端口是什么.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;连上服务器之后，先安装java环境。&lt;br&gt;&#xA;由于halo博客系统需要的最低的JDK版本是17，所以我们最低也要安装openjdk-17才行。&lt;br&gt;&#xA;输入命令：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sudo apt install openjdk-17-jre-headless -y&#xA;&#xA;E: Unable to locate package openjdk-17-jre-headless&#xA;#若是出现如上错误则代表需要更换一下Ubuntu的镜像源&#xA;&#xA;#先备份当前镜像源&#xA;cp /etc/apt/sources.list&#xA;#使用vim修改镜像源&#xA;vim /etc/apt/sources.list&#xA;&#xA;#添加镜像源   此为Ubuntu20.04&#xA;deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse&#xA;&#xA;apt-get update&#xA;#更新，然后重新输入安装JDK命令即可。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;安装完成后，输入：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;java -version&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;出现版本号就是安装成功。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/java版本号.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;下一步，安装MySQL数据库。&lt;br&gt;&#xA;如果你不打算使用MySQL或者就想使用默认的H2数据库，那么可以跳过这一步。&lt;/p&gt;&#xA;&lt;p&gt;安装MySQL，输入命令：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;apt install mysql-server -y #在输入 apt install mysql-server在此处连按两下‘TAB’键，就会出现可选的版本。&#xA;#halo博客对mysql数据库的版本要求是5.7以上。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;查看一下MySQL数据库是否正常运行。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;systemctl status mysql&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/mysql正常运行.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;接下来，创建halo数据库。&lt;/p&gt;&#xA;&lt;p&gt;输入命令：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;mysql -uroot -p #隐藏式输入密码，密码为root账户的密码。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/连接数据库.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;输入命令创建数据库。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;create database halo2 character set utf8mb4 collate utf8mb4_bin;&#xA;#创建一个名为halo2的数据库 &#xA;&#xA;exit #退出mysql&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;到此，环境配置结束。&lt;/p&gt;&#xA;&lt;h2 id=&#34;2安装halo博客系统&#34;&gt;2、安装halo博客系统&#xA;&lt;/h2&gt;&lt;p&gt;先创建一个./halo2文件夹&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;mkdir ~/.halo2  #在指定目录创建文件夹 如mkdir /home/.halo2 就是在home目录中创建一个名为.halo2的文件夹&#xA;cd ~/.halo2  #进入目录&#xA;&#xA;vim application.yaml #创建halo的配置文件。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;将配置文件修改并保存好。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;server:&#xA;  # 运行端口&#xA;  port: 8090&#xA;spring:&#xA;  # 数据库配置，支持 MySQL、MariaDB、PostgreSQL、H2 Database，具体配置方式可以参考下面的数据库配置&#xA;  r2dbc:&#xA;    url: r2dbc::pool:mysql://127.0.0.1:3306/halo2&#xA;    username: root&#xA;    password: 123456 #密码&#xA;  sql:&#xA;    init:&#xA;      mode: always&#xA;      # 需要配合 r2dbc 的配置进行改动&#xA;      platform: mysql&#xA;halo:&#xA;  caches:&#xA;    page:&#xA;      # 是否禁用页面缓存&#xA;      disabled: true&#xA;  # 工作目录位置&#xA;  work-dir: ${user.home}/.halo2  #例如/home/.halo2&#xA;  # 外部访问地址&#xA;  external-url: http://localhost:8090&#xA;  # 附件映射配置，通常用于迁移场景&#xA;  attachment:&#xA;    resource-mappings:&#xA;      - pathPattern: /images/**&#xA;        locations:&#xA;          - migrate-from-1.x&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;如果没有安装和配置数据库，那么使用默认即可。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;server:&#xA;  # 运行端口&#xA;  port: 8090&#xA;spring:&#xA;  # 数据库配置，支持 MySQL、MariaDB、PostgreSQL、H2 Database，具体配置方式可以参考下面的数据库配置&#xA;  r2dbc:&#xA;    url: r2dbc:h2:file:///${halo.work-dir}/db/halo-next?MODE=MySQL&amp;amp;DB_CLOSE_ON_EXIT=FALSE&#xA;    username: admin&#xA;    password: 123456&#xA;  sql:&#xA;    init:&#xA;      mode: always&#xA;      # 需要配合 r2dbc 的配置进行改动&#xA;      platform: h2&#xA;halo:&#xA;  caches:&#xA;    page:&#xA;      # 是否禁用页面缓存&#xA;      disabled: true&#xA;  # 工作目录位置&#xA;  work-dir: ${user.home}/.halo2  #例如/home/.halo2&#xA;  # 外部访问地址&#xA;  external-url: http://localhost:8090&#xA;  # 附件映射配置，通常用于迁移场景&#xA;  attachment:&#xA;    resource-mappings:&#xA;      - pathPattern: /images/**&#xA;        locations:&#xA;          - migrate-from-1.x&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;接下来创建一个存放halo运行包的文件夹。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;mkdir ~/halo  cd ~/halo     #可指定目录不必非要当前用户目录。&#xA;&#xA;wget https://dl.halo.run/release/halo-2.16.0-rc.2.jar -O halo.jar&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h2 id=&#34;3测试运行halo博客&#34;&gt;3、测试运行halo博客&#xA;&lt;/h2&gt;&lt;p&gt;先在NAT服务器管理面板中添加端口转发。&lt;br&gt;&#xA;我们要转发的内部端口为8090。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/添加转发.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;进入halo目录运行halo.jar。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;cd ~/halo&#xA;&#xA;java -jar halo.jar --spring.config.additional-location=optional:file:XXX&#xA;#注意 XXX为你的.halo2文件目录 如 /home/.halo2&#xA;#如果提示权限不足，那使用chmod 赋予halo.jar运行权限即可。&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;然后在浏览器输入ip+转发端口号。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/成功-mquh.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;由于这是测试运行的命令，所以断开ssh连接时，halo也会被关闭，所以我们需要使用Systemd让其作为服务运行。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;vim /etc/systemd/system/halo.service&#xA;&#xA;[Unit]&#xA;Description=Halo Service&#xA;Documentation=https://docs.halo.run&#xA;After=network-online.target&#xA;Wants=network-online.target&#xA;&#xA;[Service]&#xA;Type=simple&#xA;User=USER&#xA;ExecStart=/usr/bin/java -server -Xms256m -Xmx256m -jar JAR_PATH --spring.config.additional-location=optional:file:/home/halo/.halo2/&#xA;ExecStop=/bin/kill -s QUIT $MAINPID&#xA;Restart=always&#xA;StandOutput=syslog&#xA;#JAR_PATH为halo运行包的绝对路径。&#xA;StandError=inherit&#xA;&#xA;[Install]&#xA;WantedBy=multi-user.target&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;配置完后保存退出即可。&lt;/p&gt;&#xA;&lt;p&gt;重新加载Systemd&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;systemctl daemon-reload&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;运行服务&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;systemctl start halo&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;现在halo就作为服务在后台运行了，即便断开ssh也能正常运行。&lt;/p&gt;&#xA;&lt;h2 id=&#34;4配置cdn使用域名访问博客&#34;&gt;4、配置CDN使用域名访问博客&#xA;&lt;/h2&gt;&lt;p&gt;由于我们没有使用Nginx一类的反代理工具，所以我们这里使用CDN来进行解析。&lt;/p&gt;&#xA;&lt;p&gt;进入CDN控制台&lt;br&gt;&#xA;新增网站&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/新增网站.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;填好源IP和端口，如果你的NAT服务器是域名地址，也可以直接填写域名地址和端口。&lt;/p&gt;&#xA;&lt;p&gt;由于我们是使用了非标准端口，所以回源协议只能选择http，不可以选择https或者跟随协议。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/回源端口.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;将CDN服务商提供给我们的CNAME解析到我们的域名中。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/域名解析.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;现在就可以直接通过域名访问我们的halo博客了。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/完成了.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;至此，博客就顺利搭建完毕了。&lt;/p&gt;&#xA;&lt;h2 id=&#34;5给网站开启https&#34;&gt;5、给网站开启HTTPS&#xA;&lt;/h2&gt;&lt;p&gt;由于我们是NAT服务器，所以无法走443端口。但是我们可以利用CDN来开启HTTPS。&lt;/p&gt;&#xA;&lt;p&gt;原站不开启HTTPS，CDN节点开启HTTPS。&lt;/p&gt;&#xA;&lt;p&gt;在CDN控制台中，上传我们域名的SSL证书。然后开启https监听，选择我们上传的证书。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/选择ssl证书.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;回源协议依旧使用http。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/真的完成了.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;我们就成功给网站开启了https。&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>[腾讯云]4月25将结束免费的一年期SSL证书！</title>
            <link>http://cccc.astarry.cn/p/95ca52b6-b673-4513-a6d8-4399c12140ce/</link>
            <pubDate>Wed, 10 Apr 2024 12:26:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/95ca52b6-b673-4513-a6d8-4399c12140ce/</guid>
            <description>&lt;p&gt;腾讯云在3月21号发布公告：&lt;a class=&#34;link&#34; href=&#34;https://cloud.tencent.com/document/product/400/104538&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;关于免费 SSL 证书策略调整通知&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;1免费ssl证书有效期由12个月缩短至3个月&#34;&gt;1、免费SSL证书有效期由12个月缩短至3个月&#xA;&lt;/h2&gt;&lt;p&gt;在4月25日之后，在腾讯云申请免费的SSL证书有效期将会从12个月缩短至3个月，但在4月25号前申请的证书有效期依旧是12个月。&lt;br&gt;&#xA;有必要说明的是，只要你在4月25号00:00之前提交证书审核，那么在审核通过之后，证书的有效期仍为12个月。&lt;br&gt;&#xA;当然，如果审核未通过，再次审核才通过，那有效期也只有3个月。&lt;/p&gt;&#xA;&lt;h2 id=&#34;2免费证书取消腾讯云域名额度和全网域名额度限制&#34;&gt;2、免费证书取消腾讯云域名额度和全网域名额度限制&#xA;&lt;/h2&gt;&lt;p&gt;4月25号以后，腾讯云免费证书可以绑定任意域名，不再区分腾讯云域名额度和全网域名额度。&lt;/p&gt;&#xA;&lt;p&gt;有想申请免费SSL证书的，赶紧在4月25号前申请吧！不然就只能获得有效期为3个月的SSL证书了。&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>一个好玩的Docker项目</title>
            <link>http://cccc.astarry.cn/p/c75b99ea-3dc9-4375-b0ea-cb530beeb3ba/</link>
            <pubDate>Mon, 08 Apr 2024 14:55:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/c75b99ea-3dc9-4375-b0ea-cb530beeb3ba/</guid>
            <description>&lt;h1 id=&#34;1前言&#34;&gt;1、前言&#xA;&lt;/h1&gt;&lt;p&gt;最近看到一个好玩的Docker项目【&lt;strong&gt;chinese-dos-games&lt;/strong&gt;】80、90后的回忆杀。利用Dokcer快速搭建一个在线的中文dos游戏网站，目前共有1898款dos游戏。&lt;/p&gt;&#xA;&lt;p&gt;项目地址：&lt;a class=&#34;link&#34; href=&#34;https://github.com/rwv/chinese-dos-games&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/rwv/chinese-dos-games&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;这个项目的作者估计曾经是一位DOS游戏狂热爱好者，直接收集了1898款 DOS 游戏，不仅支持直接在线游玩，还可以通过Docker让我们一键部署在自己的NAS、云服务器上。由于1898个DOS游戏的容量大小已经达到了36G，这么大的容量完全做成镜像并不现实，所以默认的Docker镜像只保留了40多个经典的DOS游戏。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/游戏列表.png&#34;&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;2搭建&#34;&gt;2、搭建&#xA;&lt;/h1&gt;&lt;p&gt;先创建好安装目录&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;mkdir /root/dosgame&#xA;&#xA;cd /root/dosgame&#xA;&#xA;vim docker-compose.yml&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;进入vim编辑器后在英文键盘下按 i 键即可进入编辑状态。&lt;/p&gt;&#xA;&lt;p&gt;有两种方案，一种是安装默认的40款游戏：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;version: &#39;3.3&#39;&#xA;services:&#xA;    dosgame-web-docker:&#xA;        container_name: dosgame&#xA;        ports:&#xA;            - &#39;8090:262&#39;  #8090可以改成其他服务器没被占用的端口&#xA;#         volumes:&#xA;#             - &#39;/root/data/docker_data/games/chinese-dos-games:/app/static/games&#39;&#xA;        image: &#39;oldiy/dosgame-web-docker:latest&#39;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;修改好后按一下 esc ，然后输入 wq 保存退出即可。&lt;/p&gt;&#xA;&lt;p&gt;如果你的NAS或者云服务器硬盘大于36G且带宽较大又想把所有1898款游戏全都下载可以用第二种方法：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;version: &#39;3.3&#39;&#xA;services:&#xA;    dosgame-web-docker:&#xA;        container_name: dosgame&#xA;        ports:&#xA;            - &#39;8090:262&#39;  #8090可以改成其他服务器没被占用的端口&#xA;        volumes:&#xA;            - &#39;/root/data/docker_data/games/chinese-dos-games:/app/static/games&#39;&#xA;        image: &#39;oldiy/dosgame-web-docker:latest&#39;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;修改好后按一下 esc ，然后输入 wq 保存退出即可。&lt;/p&gt;&#xA;&lt;p&gt;接下来&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;cd /root/dosgame&#xA;&#xA;git clone https://github.com/rwv/chinese-dos-games.git&#xA;&#xA;cd /root/dosgame/chinese-dos-games/&#xA;&#xA;python3 download_data.py&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;将会开始下载，下载默认的40款游戏大概600M左右，如果需要下载全部1898款游戏，需要36G。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/下载游戏.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;下载完毕后就可以运行&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;cd /root/dosgame  &#xA;#与docker-compose.yml在同一目录&#xA;docker-compose up -d&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;如果是新版本的docker&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;cd /root/dosgame&#xA;&#xA;docekr compose up -d&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h1 id=&#34;3结束&#34;&gt;3、结束&#xA;&lt;/h1&gt;&lt;p&gt;到此，这个Docker项目就已经运行了起来，打开浏览器在地址栏输入IP+端口就能访问，如果不想使用IP+端口的模式，可以自己进行域名解析和反向代理即可。&lt;/p&gt;&#xA;&lt;p&gt;下面将会列出在部署过程中容易出现的问题&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;如果出现：&#xA;-bash: git: command not found&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Debian/Ubuntu&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sudo apt install git -y&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Centos&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sudo yum install git -y&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;再重新运行&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;git clone https://github.com/rwv/chinese-dos-games.git&#xA;&#xA;如果出现：&#xA;-bash: python: command not found&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;说明没有安装python&lt;/p&gt;&#xA;&lt;p&gt;Debian/Ubuntu&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sudo apt install python3&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Centos&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;sudo yum install python34&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;然后重新执行&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;python3 download_data.py&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;就OK了。&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>一个轻量的个人导航页面——Flare</title>
            <link>http://cccc.astarry.cn/p/fdfd46fb-5ae7-477e-aa77-f36e54995433/</link>
            <pubDate>Mon, 08 Apr 2024 14:55:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/fdfd46fb-5ae7-477e-aa77-f36e54995433/</guid>
            <description>&lt;h1 id=&#34;1前言&#34;&gt;1、前言&#xA;&lt;/h1&gt;&lt;p&gt;最近看到了个docker项目，一个轻量的个人书签导航页面&amp;quot;Flare&amp;quot;，所以今天就来分享一下，如何利用docker来快速部署此项目。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/打开成功.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Flare是一个轻量、快速、美观的个人导航页面，不需要任何数据库依赖，非常便捷。&lt;br&gt;&#xA;GitHub地址：&lt;a class=&#34;link&#34; href=&#34;https://github.com/soulteary/docker-flare&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/soulteary/docker-flare&lt;/a&gt;&lt;br&gt;&#xA;Flare优点:&lt;/p&gt;&#xA;&lt;p&gt;无任何数据库依赖，应用数据完全开放透明，100%属于用户自己。&lt;br&gt;&#xA;支持在线编辑，内置Material Design lcons 6K+图标，目前累计下载过万。&lt;br&gt;&#xA;支持x86以及常见的ARM设备，应用资源消耗非常低：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;CPU: &amp;lt; 1%&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;MEM: &amp;lt; 30M&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Docker Image: &amp;lt; 10M&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/性能占用低.png&#34;&gt;&lt;br&gt;&#xA;此书签导航页面，确实只需要非常少的资源，所以不论是部署在NAS还是吃灰的轻量云服务器上都是极好的选择！&lt;br&gt;&#xA;那接下来就正式开始搭建吧！&lt;/p&gt;&#xA;&lt;h1 id=&#34;2搭建&#34;&gt;2、搭建&#xA;&lt;/h1&gt;&lt;h2 id=&#34;21创建安装目录&#34;&gt;2.1、创建安装目录&#xA;&lt;/h2&gt;&lt;p&gt;创建一下安装的目录&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;mkdir /root/docker/flare&#xA;&#xA;cd /root/docker/flare&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;我们直接使用docker的方式安装。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;vim docker-compose.yml&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;进入vim编辑器，按 i 进入编辑模式&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;version: &amp;quot;3.6&amp;quot;&#xA;services:&#xA;  flare:&#xA;    image: soulteary/flare&#xA;    restart: always&#xA;    command: flare&#xA;    environment:&#xA;      - FLARE_USER=flare&#xA;      - FLARE_PASS=flare&#xA;      - FLARE_GUIDE=1&#xA;    ports:&#xA;      - 3020:5005     #端口可以随意修改成没被占用的端口&#xA;    volumes:&#xA;      - ./app:/app&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;完成后按 esc 然后 wq 保存退出。&lt;br&gt;&#xA;这是简易安装，如果需要修改配置，可阅读官方文档：&lt;a class=&#34;link&#34; href=&#34;https://github.com/soulteary/docker-flare/blob/main/docs/advanced-startup.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/soulteary/docker-flare/blob/main/docs/advanced-startup.md&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;22运行并访问网页&#34;&gt;2.2、运行并访问网页&#xA;&lt;/h2&gt;&lt;p&gt;打开防火墙，放行你设置的端口。&lt;br&gt;&#xA;如果是部分大厂的云服务器，则需要进入厂商的控制台，在安全组里放行端口。&lt;/p&gt;&#xA;&lt;p&gt;运行：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;docker-compose up -d&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;如果是新版本docker则：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;dockercompose up -d&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;img loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/启动成功.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;然后在浏览器输入 IP+端口的方式，即可访问。&lt;/p&gt;&#xA;&lt;h2 id=&#34;23更新flare&#34;&gt;2.3、更新Flare&#xA;&lt;/h2&gt;&lt;p&gt;想要更新Flare也是非常简单：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;cd /root/docker/flare&#xA;&#xA;docker-compose down&#xA;&#xA;docker-compose pull&#xA;&#xA;docker-compose up -d&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;提示：&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;WARNING! This will remove all dangling images.&#xA;Are you sure you want to continue? [y/N] &#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;按 Y 然后回车即可&lt;/p&gt;&#xA;&lt;h1 id=&#34;3结束&#34;&gt;3、结束&#xA;&lt;/h1&gt;&lt;p&gt;至此，Flare已经安装好了，如果想把自己的书签导航分享给别人使用，但又觉得 IP+端口 不太便捷，可以自己购买一个域名并进行解析，最后利用Nginx进行反代理，这样即可直接使用域名进行访问了。&lt;/p&gt;&#xA;&lt;p&gt;有问题欢迎大家留言提问。&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>利用NPS自建内网穿透服务器教程</title>
            <link>http://cccc.astarry.cn/p/80e4641d-ffea-4ee2-9803-26cb02fc5f26/</link>
            <pubDate>Fri, 26 Jan 2024 10:35:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/80e4641d-ffea-4ee2-9803-26cb02fc5f26/</guid>
            <description>&lt;p&gt;自带web管理的轻量级内网穿透工具，多平台支持X86、ARM、MIPS。&lt;/p&gt;&#xA;&lt;h3 id=&#34;nps介绍&#34;&gt;NPS介绍&#xA;&lt;/h3&gt;&lt;p&gt;nps是一款轻量级、高性能、功能强大的&lt;strong&gt;内网穿透&lt;/strong&gt;代理服务器。目前支持&lt;strong&gt;tcp、udp流量转发&lt;/strong&gt;，可支持任何&lt;strong&gt;tcp、udp&lt;/strong&gt;上层协议（访问内网网站、本地支付接口调试、ssh访问、远程桌面，内网dns解析等等……），此外还&lt;strong&gt;支持内网http代理、内网socks5代理&lt;/strong&gt;、&lt;strong&gt;p2p等&lt;/strong&gt;，并带有功能强大的web管理端。&lt;/p&gt;&#xA;&lt;h3 id=&#34;安装准备&#34;&gt;安装准备&#xA;&lt;/h3&gt;&lt;p&gt;一台拥有公网IP的云服务器或者VPS。&lt;br&gt;&#xA;推荐选择大一点的带宽，内网穿透到你家内网的带宽就取决于你NPS服务器的带宽，越大越好。&lt;br&gt;&#xA;Github：https://github.com/ehang-io/nps/releases&lt;br&gt;&#xA;由于GitHub最近被污染了，很多地方都进不去，所以我把所需要的文件放在下面。&lt;br&gt;&#xA;&lt;a class=&#34;link&#34; href=&#34;http://pan.astarry.cn/yuanma/NPS%E6%9C%8D%E5%8A%A1%E7%AB%AF%E5%92%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E6%BA%90%E7%A0%81&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;这里&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;服务端安装nps&#34;&gt;服务端安装NPS&#xA;&lt;/h3&gt;&lt;p&gt;如果服务端安装了ftp工具，那直接使用ftp将linux_amd64_server.tar.gz上传至服务器。&lt;br&gt;&#xA;使用SSH连接服务器，进入存放Linux_amd64_server.tar.gz的目录。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ls查看.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/ls查看.png&#34;&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;# 使用下列命令将压缩包解压。&#xA;tar -zxvf linux_amd64_server.tar.gz&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;解压后-csii.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/解压后-csii.png&#34;&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;# 修改配置文件&#xA;vi /xx/conf/nps.conf&#xA;# 将你自己的目录替换xx即可&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;配置文件.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/配置文件.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;需要更改web管理的用户和密码&lt;br&gt;&#xA;也可以更改默认端口（可选）&lt;/p&gt;&#xA;&lt;p&gt;修改完毕后进行安装&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;# 安装nps&#xA;./nps install &#xA;&#xA;# 启动nps&#xA;nps&#xA;&#xA;# 后台执行启动或停止&#xA;nps start&#xA;nps stop&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;启动完后，打开浏览器在url栏中输入IP:端口，进入nps的web管理页面，输入刚才你修改的账号密码。&lt;br&gt;&#xA;至此，nps的服务端已经安装完毕。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;web管理.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/web管理.png&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;客户端安装nps&#34;&gt;客户端安装NPS&#xA;&lt;/h3&gt;&lt;p&gt;点击客户端，选择新增。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;新增客户端.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/新增客户端.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;test.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/test.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;看自己的需求更改。&lt;/p&gt;&#xA;&lt;p&gt;客户端连接&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;客户端连接.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/客户端连接.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;在客户端使用此命令就能连上服务器。&lt;br&gt;&#xA;如果需要后台运行在命令后加个&amp;amp;就行（注意&amp;amp;前需要空格）&lt;/p&gt;&#xA;&lt;h3 id=&#34;安装完成&#34;&gt;安装完成&#xA;&lt;/h3&gt;&lt;p&gt;至此就完成了NPS内网穿透服务器的安装，之后需要穿透什么自己选择即可。&lt;br&gt;&#xA;有疑问，或者过程有问题，可以在下方留言，我会帮忙解答的。&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>一份仿蓝奏云网盘源码</title>
            <link>http://cccc.astarry.cn/p/007bcaa0-1bf8-4ccd-a901-88bac68b7159/</link>
            <pubDate>Sun, 14 Jan 2024 15:29:00 +0800</pubDate>
            <guid>http://cccc.astarry.cn/p/007bcaa0-1bf8-4ccd-a901-88bac68b7159/</guid>
            <description>&lt;p&gt;主要盈利方式是依靠用户上传，游客开通VIP下载，盈利与用户分成。&lt;br&gt;&#xA;环境部署：Nginx；PHP7.1；MySql5.5；phpMyAdmin5.0&lt;br&gt;&#xA;支持多个服务器部署，支持阿里云、腾讯云oss 。大文件分片上传、下载限速、用户组管理、存储策略管理、文件回收站、默认对接易支付接口、用户提现管理、文件举报管理、找回密码邮件发送、用户文件收益走势图、新增 vip 专属标志 个人中心 分享页 标签 、VIP功能等等&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;首页.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/首页.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;下载源码：&lt;a class=&#34;link&#34; href=&#34;http://pan.astarry.cn/source/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;仿蓝奏云&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;该源码只能服务器安装，虚拟主机无法安装。&lt;br&gt;&#xA;1、将源码上传到服务器中并解压。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;解压后.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/解压后.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;2、将PHP7.1设置伪静态think，且将网站目录邦定至public。&lt;/p&gt;&#xA;&lt;p&gt;3、在浏览器的url中输入phpMyAdmin的地址（ip:888）。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;数据库地址.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/数据库地址.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;4、开始创建数据库&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;新建数据库.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/新建数据库.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;设置数据库名称.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/设置数据库名称.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;创建完之后点击刚创建的数据库开始创建用户权限。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;点击新增用户.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/点击新增用户.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;新建用户界面.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/新建用户界面.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;用户名和密码需要记下来，其他不用改动直接点击右下角执行即可。&lt;/p&gt;&#xA;&lt;p&gt;接下来只需要导入数据库文件就行了。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;数据库导入.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/数据库导入.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;数据库导入1.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/数据库导入1.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;点击选择文件，选择“数据库”文件夹中的“pan.sql”然后执行就行了。&lt;/p&gt;&#xA;&lt;p&gt;最后，我们只需要修改一下“config”文件夹中的“database.php”文件。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;修改.png&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;http://cccc.astarry.cn/images/修改.png&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;将数据库名、用户名、密码修改成自己的就好，接下来保存就行了。&lt;/p&gt;&#xA;&lt;p&gt;后台地址：你绑定的域名/admin.php 账号和密码都是admin，自己进去修改一下。&lt;/p&gt;&#xA;&lt;p&gt;有问题的话可以留言。&lt;/p&gt;&#xA;</description>
        </item></channel>
</rss>
