<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[MyBBS - WEB]]></title>
		<link>https://bbs.mjjjd.eu.org/</link>
		<description><![CDATA[MyBBS - https://bbs.mjjjd.eu.org]]></description>
		<pubDate>Tue, 05 May 2026 12:03:37 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[PVE虚拟机更新软件包错误：command ‘apt-get update’ failed: exit code 100解决办法]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=69</link>
			<pubDate>Wed, 06 Aug 2025 08:18:13 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=69</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
<br />
PVE虚拟机更新软件包错误：command ‘apt-get update’ failed: exit code 100解决办法<br />
在登录 Proxmox VE 虚拟机面板时候，经常看到任务栏日志框有一堆的错误提示。 具体的提示是：TASK …<br />
2023-12-27<br />
阅读时长: 2 分钟<br />
在登录 Proxmox VE 虚拟机面板时候，经常看到任务栏日志框有一堆的错误提示。<br />
<br />
PVE 虚拟机更新软件包错误：command’apt-get update’failed: exit code 100 解决办法 具体的提示是：TASK ERROR: command ‘apt-get update’ failed: exit code 100<br />
<br />
在 Proxmox VE 中，如果您使用的是企业版（Proxmox VE Subscription），系统会要求您拥有有效的订阅才能获取软件更新和支持。但对于个人用户来说，并不一定需要企业订阅，因为 Proxmox VE 也提供了免费的社区版本。<br />
<br />
如果您是个人用户，只是用于个人目的，并不需要企业订阅，可以考虑使用 Proxmox VE 的社区版。在社区版中，您可以通过默认的软件源来获取更新，而无需购买企业订阅<br />
<br />
解决办法：<br />
在虚拟机中打开终端。<br />
输入以下命令：<br />
1<br />
sudo nano /etc/apt/sources.list<br />
Copy<br />
这将打开软件包源文件。然后按删除键删除所有内容。<br />
<br />
粘贴个人用户的订阅链接：<br />
 1<br />
 2<br />
 3<br />
 4<br />
 5<br />
 6<br />
 7<br />
 8<br />
 9<br />
10<br />
11<br />
12<br />
<br />
<br />
|  | deb <a href="http://ftp.debian.org/debian" target="_blank" rel="noopener" class="mycode_url">http://ftp.debian.org/debian</a> bookworm main contrib |<br />
| --- | --- |<br />
|  | deb <a href="http://ftp.debian.org/debian" target="_blank" rel="noopener" class="mycode_url">http://ftp.debian.org/debian</a> bookworm-updates main contrib |<br />
|  |  |<br />
|  | # Proxmox VE pve-no-subscription repository provided by proxmox.com, |<br />
|  | # NOT recommended for production use |<br />
|  | deb <a href="http://download.proxmox.com/debian/pve" target="_blank" rel="noopener" class="mycode_url">http://download.proxmox.com/debian/pve</a> bookworm pve-no-subscription |<br />
|  |  |<br />
|  | # security updates |<br />
|  | deb <a href="http://security.debian.org/debian-security" target="_blank" rel="noopener" class="mycode_url">http://security.debian.org/debian-security</a> bookworm-security main contrib |<br />
Copy<br />
然后按 Ctrl+ O 保存文件，然后再按 Enter 保存成功。<br />
<br />
PVE 虚拟机更新软件包错误：command’apt-get update’failed: exit code 100 解决办法 5. 同样的方法修改 /etc/apt/sources.list.d/ceph.list 内容修改为：deb <a href="http://download.proxmox.com/debian/ceph-quincy" target="_blank" rel="noopener" class="mycode_url">http://download.proxmox.com/debian/ceph-quincy</a> bookworm no-subscription 6. 按 Ctrl+ X 键保存并关闭文件。注释掉 /etc/apt/sources.list.d/pve-enterprise.list 里面的所有内容 7. 输入以下命令：<br />
<br />
1<br />
sudo apt-get update<br />
Copy<br />
这将重新下载软件包数据库。<br />
<br />
输入以下命令：<br />
1<br />
sudo apt-get upgrade<br />
Copy<br />
这将升级所有软件包。<br />
<br />
完成这些步骤后，您应该能够成功更新软件包数据库。<br />
<br />
官方的解答：<br />
This is the recommended repository for testing and non-production use. Its packages are not as heavily tested and validated. You don’t need a subscription key to access the pve-no-subscription repository.<br />
<br />
We recommend to configure this repository in /etc/apt/sources.list.<br />
<br />
File /etc/apt/sources.list<br />
<br />
1<br />
deb <a href="http://ftp.debian.org/debian" target="_blank" rel="noopener" class="mycode_url">http://ftp.debian.org/debian</a> bookworm main contrib deb <a href="http://ftp.debian.org/debian" target="_blank" rel="noopener" class="mycode_url">http://ftp.debian.org/debian</a> bookworm-updates main contrib # Proxmox VE pve-no-subscription repository provided by proxmox.com, # NOT recommended for production use deb <a href="http://download.proxmox.com/debian/pve" target="_blank" rel="noopener" class="mycode_url">http://download.proxmox.com/debian/pve</a> bookworm pve-no-subscription # security updates deb <a href="http://security.debian.org/debian-security" target="_blank" rel="noopener" class="mycode_url">http://security.debian.org/debian-security</a> bookworm-security main contrib<br />
Copy<br />
请注意，在修改软件源配置之前，建议先备份原有的软件源配置文件，以防意外情况发生时可以恢复到之前的状态。此外，对于任何系统配置的更改，建议在操作之前做好充分的备份，并在操作过程中小心谨慎，以避免造成不必要的问题。<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
<br />
PVE虚拟机更新软件包错误：command ‘apt-get update’ failed: exit code 100解决办法<br />
在登录 Proxmox VE 虚拟机面板时候，经常看到任务栏日志框有一堆的错误提示。 具体的提示是：TASK …<br />
2023-12-27<br />
阅读时长: 2 分钟<br />
在登录 Proxmox VE 虚拟机面板时候，经常看到任务栏日志框有一堆的错误提示。<br />
<br />
PVE 虚拟机更新软件包错误：command’apt-get update’failed: exit code 100 解决办法 具体的提示是：TASK ERROR: command ‘apt-get update’ failed: exit code 100<br />
<br />
在 Proxmox VE 中，如果您使用的是企业版（Proxmox VE Subscription），系统会要求您拥有有效的订阅才能获取软件更新和支持。但对于个人用户来说，并不一定需要企业订阅，因为 Proxmox VE 也提供了免费的社区版本。<br />
<br />
如果您是个人用户，只是用于个人目的，并不需要企业订阅，可以考虑使用 Proxmox VE 的社区版。在社区版中，您可以通过默认的软件源来获取更新，而无需购买企业订阅<br />
<br />
解决办法：<br />
在虚拟机中打开终端。<br />
输入以下命令：<br />
1<br />
sudo nano /etc/apt/sources.list<br />
Copy<br />
这将打开软件包源文件。然后按删除键删除所有内容。<br />
<br />
粘贴个人用户的订阅链接：<br />
 1<br />
 2<br />
 3<br />
 4<br />
 5<br />
 6<br />
 7<br />
 8<br />
 9<br />
10<br />
11<br />
12<br />
<br />
<br />
|  | deb <a href="http://ftp.debian.org/debian" target="_blank" rel="noopener" class="mycode_url">http://ftp.debian.org/debian</a> bookworm main contrib |<br />
| --- | --- |<br />
|  | deb <a href="http://ftp.debian.org/debian" target="_blank" rel="noopener" class="mycode_url">http://ftp.debian.org/debian</a> bookworm-updates main contrib |<br />
|  |  |<br />
|  | # Proxmox VE pve-no-subscription repository provided by proxmox.com, |<br />
|  | # NOT recommended for production use |<br />
|  | deb <a href="http://download.proxmox.com/debian/pve" target="_blank" rel="noopener" class="mycode_url">http://download.proxmox.com/debian/pve</a> bookworm pve-no-subscription |<br />
|  |  |<br />
|  | # security updates |<br />
|  | deb <a href="http://security.debian.org/debian-security" target="_blank" rel="noopener" class="mycode_url">http://security.debian.org/debian-security</a> bookworm-security main contrib |<br />
Copy<br />
然后按 Ctrl+ O 保存文件，然后再按 Enter 保存成功。<br />
<br />
PVE 虚拟机更新软件包错误：command’apt-get update’failed: exit code 100 解决办法 5. 同样的方法修改 /etc/apt/sources.list.d/ceph.list 内容修改为：deb <a href="http://download.proxmox.com/debian/ceph-quincy" target="_blank" rel="noopener" class="mycode_url">http://download.proxmox.com/debian/ceph-quincy</a> bookworm no-subscription 6. 按 Ctrl+ X 键保存并关闭文件。注释掉 /etc/apt/sources.list.d/pve-enterprise.list 里面的所有内容 7. 输入以下命令：<br />
<br />
1<br />
sudo apt-get update<br />
Copy<br />
这将重新下载软件包数据库。<br />
<br />
输入以下命令：<br />
1<br />
sudo apt-get upgrade<br />
Copy<br />
这将升级所有软件包。<br />
<br />
完成这些步骤后，您应该能够成功更新软件包数据库。<br />
<br />
官方的解答：<br />
This is the recommended repository for testing and non-production use. Its packages are not as heavily tested and validated. You don’t need a subscription key to access the pve-no-subscription repository.<br />
<br />
We recommend to configure this repository in /etc/apt/sources.list.<br />
<br />
File /etc/apt/sources.list<br />
<br />
1<br />
deb <a href="http://ftp.debian.org/debian" target="_blank" rel="noopener" class="mycode_url">http://ftp.debian.org/debian</a> bookworm main contrib deb <a href="http://ftp.debian.org/debian" target="_blank" rel="noopener" class="mycode_url">http://ftp.debian.org/debian</a> bookworm-updates main contrib # Proxmox VE pve-no-subscription repository provided by proxmox.com, # NOT recommended for production use deb <a href="http://download.proxmox.com/debian/pve" target="_blank" rel="noopener" class="mycode_url">http://download.proxmox.com/debian/pve</a> bookworm pve-no-subscription # security updates deb <a href="http://security.debian.org/debian-security" target="_blank" rel="noopener" class="mycode_url">http://security.debian.org/debian-security</a> bookworm-security main contrib<br />
Copy<br />
请注意，在修改软件源配置之前，建议先备份原有的软件源配置文件，以防意外情况发生时可以恢复到之前的状态。此外，对于任何系统配置的更改，建议在操作之前做好充分的备份，并在操作过程中小心谨慎，以避免造成不必要的问题。<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[iKuai 爱快软路由企业版 3.7.14 开心版(带root版本)]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=68</link>
			<pubDate>Tue, 29 Jul 2025 11:45:12 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=68</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
(友情提醒：这玩意适合动手能力强，有一定编程技术基础的用户，你要是连 SSH 都不会，你就果断放弃吧)<br />
<br />
目前已知只有 3.7.14 版本是支持 root 登录的，而且移除了云控，别登录云平台！<br />
至于 iKuai 格机 grub（系统还在，格式化引导分区），建议停留在 3.7.14 版本即可<br />
<br />
上教程！<br />
<br />
iKuai 爱快软路由企业版 3.7.14 开心版(带root版本)<br />
<br />
 <br />
<br />
1.先下载爱快安装包安装系统： <a href="https://patch.ikuai8.com/3.x/iso" target="_blank" rel="noopener" class="mycode_url">https://patch.ikuai8.com/3.x/iso</a> … ild202408011011.iso<br />
2.下载升级包并进入后台更新系统为企业版： iKuai8_x64_3.7.14_Enterprise.bin <br />
<br />
3.远程管理打开 ssh 登录<br />
<br />
4.ssh sshd@爱快 ip<br />
<br />
进入后台在“请输入菜单编号:”后面<br />
<br />
iKuai 爱快软路由企业版 3.7.14 开心版(带root版本)<br />
<br />
输入 whoami 然后回车界面会闪烁一下<br />
然后再盲打(输入内容不会显示内容，输入完了就回车)： Admin@123#fuck<br />
<br />
回车就可以进 root 了<br />
<br />
 <br />
有 root 可以直接改 ipv6 条数<br />
文件在 /etc/mnt/.ipv6_xxx<br />
<br />
这个 3.7.14 的包已经去了云控，企业版中文也改成了开心版。如开头所述，一旦选择升级至官方的最新版，虽然功能正常, 但终端无法再进入了。<br />
也就是说 root 失效，官方的企业版固件是不能真正去升级的，要想能用得跟像这个版本改包，不然会导致 grub 被 ikuai 系统抹掉。<br />
<br />
之前很多 arm 路由改机刷爱快的，咸鱼特别多，都搞了两三年了。爱快是不想管，不是不能管，听朋友说，这些机器，不管什么型号一夜之间全部变砖，除非刷了 uboot 的，可以重刷。<br />
<br />
x86 的企业破解版本没见过，最近找到了，虚拟机测试，安装了两个爱快企业（lucienshui 的 ikuai 版本下载，下一段有），一个绑定云，一个不绑定，只是开着，没两天，全都卡 grub 。用 Ubuntu pe 看到，启动分区没有了，数据都在。<br />
<br />
另外测试，破解版是无法正常升级的，https://lucienshui.github.io/ikuai-firmware/ 这里下载免费版，企业版，OEM 版，上传固件升级，除了免费版本，其他的都无法升级，所以破解版只能玩玩，不能应用到真实场景中，只能变砖。<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
(友情提醒：这玩意适合动手能力强，有一定编程技术基础的用户，你要是连 SSH 都不会，你就果断放弃吧)<br />
<br />
目前已知只有 3.7.14 版本是支持 root 登录的，而且移除了云控，别登录云平台！<br />
至于 iKuai 格机 grub（系统还在，格式化引导分区），建议停留在 3.7.14 版本即可<br />
<br />
上教程！<br />
<br />
iKuai 爱快软路由企业版 3.7.14 开心版(带root版本)<br />
<br />
 <br />
<br />
1.先下载爱快安装包安装系统： <a href="https://patch.ikuai8.com/3.x/iso" target="_blank" rel="noopener" class="mycode_url">https://patch.ikuai8.com/3.x/iso</a> … ild202408011011.iso<br />
2.下载升级包并进入后台更新系统为企业版： iKuai8_x64_3.7.14_Enterprise.bin <br />
<br />
3.远程管理打开 ssh 登录<br />
<br />
4.ssh sshd@爱快 ip<br />
<br />
进入后台在“请输入菜单编号:”后面<br />
<br />
iKuai 爱快软路由企业版 3.7.14 开心版(带root版本)<br />
<br />
输入 whoami 然后回车界面会闪烁一下<br />
然后再盲打(输入内容不会显示内容，输入完了就回车)： Admin@123#fuck<br />
<br />
回车就可以进 root 了<br />
<br />
 <br />
有 root 可以直接改 ipv6 条数<br />
文件在 /etc/mnt/.ipv6_xxx<br />
<br />
这个 3.7.14 的包已经去了云控，企业版中文也改成了开心版。如开头所述，一旦选择升级至官方的最新版，虽然功能正常, 但终端无法再进入了。<br />
也就是说 root 失效，官方的企业版固件是不能真正去升级的，要想能用得跟像这个版本改包，不然会导致 grub 被 ikuai 系统抹掉。<br />
<br />
之前很多 arm 路由改机刷爱快的，咸鱼特别多，都搞了两三年了。爱快是不想管，不是不能管，听朋友说，这些机器，不管什么型号一夜之间全部变砖，除非刷了 uboot 的，可以重刷。<br />
<br />
x86 的企业破解版本没见过，最近找到了，虚拟机测试，安装了两个爱快企业（lucienshui 的 ikuai 版本下载，下一段有），一个绑定云，一个不绑定，只是开着，没两天，全都卡 grub 。用 Ubuntu pe 看到，启动分区没有了，数据都在。<br />
<br />
另外测试，破解版是无法正常升级的，https://lucienshui.github.io/ikuai-firmware/ 这里下载免费版，企业版，OEM 版，上传固件升级，除了免费版本，其他的都无法升级，所以破解版只能玩玩，不能应用到真实场景中，只能变砖。<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[nginx简单配置多个php服务实例教程]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=67</link>
			<pubDate>Fri, 10 Nov 2023 08:38:57 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=67</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
    nginx安装刚安装好是不能访问php文件的,需要我们进行配置,下面这篇文章主要给大家介绍了关于nginx简单配置多个php服务的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下<br />
    1、安装好php和nginx程序，并运行。<br />
<br />
2、找到nginx.conf文件，默认在/etc/nginx目录下，如果找不到用一下命令查询<br />
<br />
sudo find / -name nginx.conf<br />
<br />
3、修改nginx.conf文件<br />
<br />
默认的nginx.conf配置<br />
<br />
#user  nobody;<br />
worker_processes  1;<br />
 <br />
#error_log  logs/error.log;<br />
#error_log  logs/error.log  notice;<br />
#error_log  logs/error.log  info;<br />
 <br />
#pid        logs/nginx.pid;<br />
 <br />
 <br />
events {<br />
    worker_connections  1024;<br />
}<br />
 <br />
 <br />
http {<br />
    include       mime.types;<br />
    default_type  application/octet-stream;<br />
 <br />
    #log_format  main  '&#36;remote_addr - &#36;remote_user [&#36;time_local] "&#36;request" '<br />
    #                  '&#36;status &#36;body_bytes_sent "&#36;http_referer" '<br />
    #                  '"&#36;http_user_agent" "&#36;http_x_forwarded_for"';<br />
 <br />
    #access_log  logs/access.log  main;<br />
 <br />
    sendfile        on;<br />
    #tcp_nopush     on;<br />
 <br />
    #keepalive_timeout  0;<br />
    keepalive_timeout  65;<br />
 <br />
    #gzip  on;<br />
 <br />
    server {<br />
        listen       80;<br />
        server_name  localhost;<br />
 <br />
        #charset koi8-r;<br />
 <br />
        #access_log  logs/host.access.log  main;<br />
 <br />
        location / {<br />
            root   html;<br />
            index  index.html index.htm;<br />
        }<br />
 <br />
        #error_page  404              /404.html;<br />
 <br />
        # redirect server error pages to the static page /50x.html<br />
        #<br />
        error_page   500 502 503 504  /50x.html;<br />
        location = /50x.html {<br />
            root   html;<br />
        }<br />
 <br />
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80<br />
        #<br />
        #location ~ \.php&#36; {<br />
        #    proxy_pass   <a href="http://127" target="_blank" rel="noopener" class="mycode_url">http://127</a>.0.0.1;<br />
        #}<br />
 <br />
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000<br />
        #<br />
        #location ~ \.php&#36; {<br />
        #    root           html;<br />
        #    fastcgi_pass   127.0.0.1:9000;<br />
        #    fastcgi_index  index.php;<br />
        #    fastcgi_param  SCRIPT_FILENAME  /scripts&#36;fastcgi_script_name;<br />
        #    include        fastcgi_params;<br />
        #}<br />
 <br />
        # deny access to .htaccess files, if Apache's document root<br />
        # concurs with nginx's one<br />
        #<br />
        #location ~ /\.ht {<br />
        #    deny  all;<br />
        #}<br />
    }<br />
 <br />
 <br />
    # another virtual host using mix of IP-, name-, and port-based configuration<br />
    #<br />
    #server {<br />
    #    listen       8000;<br />
    #    listen       somename:8080;<br />
    #    server_name  somename  alias  another.alias;<br />
 <br />
    #    location / {<br />
    #        root   html;<br />
    #        index  index.html index.htm;<br />
    #    }<br />
    #}<br />
 <br />
 <br />
    # HTTPS server<br />
    #<br />
    #server {<br />
    #    listen       443 ssl;<br />
    #    server_name  localhost;<br />
 <br />
    #    ssl_certificate      cert.pem;<br />
    #    ssl_certificate_key  cert.key;<br />
 <br />
    #    ssl_session_cache    shared:SSL:1m;<br />
    #    ssl_session_timeout  5m;<br />
 <br />
    #    ssl_ciphers  HIGH:!aNULL:!MD5;<br />
    #    ssl_prefer_server_ciphers  on;<br />
 <br />
    #    location / {<br />
    #        root   html;<br />
    #        index  index.html index.htm;<br />
    #    }<br />
    #}<br />
    include servers/*;<br />
}<br />
把server下的这段#号去掉并修改即可，将 PHP 脚本传递给在 127.0.0.1:9000 上侦听的 FastCGI 服务器<br />
<br />
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000<br />
#<br />
location ~ \.php&#36; {<br />
    fastcgi_pass   127.0.0.1:9000;<br />
    fastcgi_index  index.php;<br />
    fastcgi_param SCRIPT_FILENAME  &#36;document_root&#36;fastcgi_script_name;<br />
    include        fastcgi_params;<br />
}<br />
访问 localhost<br />
<br />
fastcgi_param  SCRIPT_FILENAME    &#36;document_root&#36;fastcgi_script_name;#脚本文件请求的路径<br />
fastcgi_param  QUERY_STRING       &#36;query_string; #请求的参数;如?app=123<br />
fastcgi_param  REQUEST_METHOD     &#36;request_method; #请求的动作(GET,POST)<br />
fastcgi_param  CONTENT_TYPE       &#36;content_type; #请求头中的Content-Type字段<br />
fastcgi_param  CONTENT_LENGTH     &#36;content_length; #请求头中的Content-length字段。<br />
  <br />
fastcgi_param  SCRIPT_NAME        &#36;fastcgi_script_name; #脚本名称 <br />
fastcgi_param  REQUEST_URI        &#36;request_uri; #请求的地址不带参数<br />
fastcgi_param  DOCUMENT_URI       &#36;document_uri; #与&#36;uri相同。 <br />
fastcgi_param  DOCUMENT_ROOT      &#36;document_root; #网站的根目录。在server配置中root指令中指定的值 <br />
fastcgi_param  SERVER_PROTOCOL    &#36;server_protocol; #请求使用的协议，通常是HTTP/1.0或HTTP/1.1。  <br />
  <br />
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;#cgi 版本<br />
fastcgi_param  SERVER_SOFTWARE    nginx/&#36;nginx_version;#nginx 版本号，可修改、隐藏<br />
  <br />
fastcgi_param  REMOTE_ADDR        &#36;remote_addr; #客户端IP<br />
fastcgi_param  REMOTE_PORT        &#36;remote_port; #客户端端口<br />
fastcgi_param  SERVER_ADDR        &#36;server_addr; #服务器IP地址<br />
fastcgi_param  SERVER_PORT        &#36;server_port; #服务器端口<br />
fastcgi_param  SERVER_NAME        &#36;server_name; #服务器名，域名在server配置中指定的server_name<br />
<br />
配置多个服务：<br />
nginx.conf文件有一行<br />
<br />
include servers/*;<br />
代表会读取servers文件夹下的所有配置文件，没有可以自己加上，并创建文件夹，servers文件夹下创建一个站点配置文件site1.conf。<br />
<br />
server {<br />
    listen       80;#端口<br />
    server_name  site1.com;#你的站点域名/ip<br />
    root         /data/site1/public; #你的站点目录，绝对路径即可<br />
    index index.php index.html index.htm;<br />
 <br />
    #charset koi8-r;<br />
    #access_log  logs/host.access.log  main;<br />
    location / {<br />
        try_files &#36;uri &#36;uri/ /index.php?&#36;query_string;<br />
    }<br />
    error_page   500 502 503 504  /50x.html;<br />
    location = /50x.html {<br />
        root   html;<br />
    }<br />
    location ~ \.php&#36; {<br />
        fastcgi_pass   127.0.0.1:9000;<br />
        fastcgi_index  index.php;<br />
        fastcgi_param SCRIPT_FILENAME  &#36;document_root&#36;fastcgi_script_name;<br />
        include        fastcgi_params;<br />
    }<br />
}<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
    nginx安装刚安装好是不能访问php文件的,需要我们进行配置,下面这篇文章主要给大家介绍了关于nginx简单配置多个php服务的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下<br />
    1、安装好php和nginx程序，并运行。<br />
<br />
2、找到nginx.conf文件，默认在/etc/nginx目录下，如果找不到用一下命令查询<br />
<br />
sudo find / -name nginx.conf<br />
<br />
3、修改nginx.conf文件<br />
<br />
默认的nginx.conf配置<br />
<br />
#user  nobody;<br />
worker_processes  1;<br />
 <br />
#error_log  logs/error.log;<br />
#error_log  logs/error.log  notice;<br />
#error_log  logs/error.log  info;<br />
 <br />
#pid        logs/nginx.pid;<br />
 <br />
 <br />
events {<br />
    worker_connections  1024;<br />
}<br />
 <br />
 <br />
http {<br />
    include       mime.types;<br />
    default_type  application/octet-stream;<br />
 <br />
    #log_format  main  '&#36;remote_addr - &#36;remote_user [&#36;time_local] "&#36;request" '<br />
    #                  '&#36;status &#36;body_bytes_sent "&#36;http_referer" '<br />
    #                  '"&#36;http_user_agent" "&#36;http_x_forwarded_for"';<br />
 <br />
    #access_log  logs/access.log  main;<br />
 <br />
    sendfile        on;<br />
    #tcp_nopush     on;<br />
 <br />
    #keepalive_timeout  0;<br />
    keepalive_timeout  65;<br />
 <br />
    #gzip  on;<br />
 <br />
    server {<br />
        listen       80;<br />
        server_name  localhost;<br />
 <br />
        #charset koi8-r;<br />
 <br />
        #access_log  logs/host.access.log  main;<br />
 <br />
        location / {<br />
            root   html;<br />
            index  index.html index.htm;<br />
        }<br />
 <br />
        #error_page  404              /404.html;<br />
 <br />
        # redirect server error pages to the static page /50x.html<br />
        #<br />
        error_page   500 502 503 504  /50x.html;<br />
        location = /50x.html {<br />
            root   html;<br />
        }<br />
 <br />
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80<br />
        #<br />
        #location ~ \.php&#36; {<br />
        #    proxy_pass   <a href="http://127" target="_blank" rel="noopener" class="mycode_url">http://127</a>.0.0.1;<br />
        #}<br />
 <br />
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000<br />
        #<br />
        #location ~ \.php&#36; {<br />
        #    root           html;<br />
        #    fastcgi_pass   127.0.0.1:9000;<br />
        #    fastcgi_index  index.php;<br />
        #    fastcgi_param  SCRIPT_FILENAME  /scripts&#36;fastcgi_script_name;<br />
        #    include        fastcgi_params;<br />
        #}<br />
 <br />
        # deny access to .htaccess files, if Apache's document root<br />
        # concurs with nginx's one<br />
        #<br />
        #location ~ /\.ht {<br />
        #    deny  all;<br />
        #}<br />
    }<br />
 <br />
 <br />
    # another virtual host using mix of IP-, name-, and port-based configuration<br />
    #<br />
    #server {<br />
    #    listen       8000;<br />
    #    listen       somename:8080;<br />
    #    server_name  somename  alias  another.alias;<br />
 <br />
    #    location / {<br />
    #        root   html;<br />
    #        index  index.html index.htm;<br />
    #    }<br />
    #}<br />
 <br />
 <br />
    # HTTPS server<br />
    #<br />
    #server {<br />
    #    listen       443 ssl;<br />
    #    server_name  localhost;<br />
 <br />
    #    ssl_certificate      cert.pem;<br />
    #    ssl_certificate_key  cert.key;<br />
 <br />
    #    ssl_session_cache    shared:SSL:1m;<br />
    #    ssl_session_timeout  5m;<br />
 <br />
    #    ssl_ciphers  HIGH:!aNULL:!MD5;<br />
    #    ssl_prefer_server_ciphers  on;<br />
 <br />
    #    location / {<br />
    #        root   html;<br />
    #        index  index.html index.htm;<br />
    #    }<br />
    #}<br />
    include servers/*;<br />
}<br />
把server下的这段#号去掉并修改即可，将 PHP 脚本传递给在 127.0.0.1:9000 上侦听的 FastCGI 服务器<br />
<br />
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000<br />
#<br />
location ~ \.php&#36; {<br />
    fastcgi_pass   127.0.0.1:9000;<br />
    fastcgi_index  index.php;<br />
    fastcgi_param SCRIPT_FILENAME  &#36;document_root&#36;fastcgi_script_name;<br />
    include        fastcgi_params;<br />
}<br />
访问 localhost<br />
<br />
fastcgi_param  SCRIPT_FILENAME    &#36;document_root&#36;fastcgi_script_name;#脚本文件请求的路径<br />
fastcgi_param  QUERY_STRING       &#36;query_string; #请求的参数;如?app=123<br />
fastcgi_param  REQUEST_METHOD     &#36;request_method; #请求的动作(GET,POST)<br />
fastcgi_param  CONTENT_TYPE       &#36;content_type; #请求头中的Content-Type字段<br />
fastcgi_param  CONTENT_LENGTH     &#36;content_length; #请求头中的Content-length字段。<br />
  <br />
fastcgi_param  SCRIPT_NAME        &#36;fastcgi_script_name; #脚本名称 <br />
fastcgi_param  REQUEST_URI        &#36;request_uri; #请求的地址不带参数<br />
fastcgi_param  DOCUMENT_URI       &#36;document_uri; #与&#36;uri相同。 <br />
fastcgi_param  DOCUMENT_ROOT      &#36;document_root; #网站的根目录。在server配置中root指令中指定的值 <br />
fastcgi_param  SERVER_PROTOCOL    &#36;server_protocol; #请求使用的协议，通常是HTTP/1.0或HTTP/1.1。  <br />
  <br />
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;#cgi 版本<br />
fastcgi_param  SERVER_SOFTWARE    nginx/&#36;nginx_version;#nginx 版本号，可修改、隐藏<br />
  <br />
fastcgi_param  REMOTE_ADDR        &#36;remote_addr; #客户端IP<br />
fastcgi_param  REMOTE_PORT        &#36;remote_port; #客户端端口<br />
fastcgi_param  SERVER_ADDR        &#36;server_addr; #服务器IP地址<br />
fastcgi_param  SERVER_PORT        &#36;server_port; #服务器端口<br />
fastcgi_param  SERVER_NAME        &#36;server_name; #服务器名，域名在server配置中指定的server_name<br />
<br />
配置多个服务：<br />
nginx.conf文件有一行<br />
<br />
include servers/*;<br />
代表会读取servers文件夹下的所有配置文件，没有可以自己加上，并创建文件夹，servers文件夹下创建一个站点配置文件site1.conf。<br />
<br />
server {<br />
    listen       80;#端口<br />
    server_name  site1.com;#你的站点域名/ip<br />
    root         /data/site1/public; #你的站点目录，绝对路径即可<br />
    index index.php index.html index.htm;<br />
 <br />
    #charset koi8-r;<br />
    #access_log  logs/host.access.log  main;<br />
    location / {<br />
        try_files &#36;uri &#36;uri/ /index.php?&#36;query_string;<br />
    }<br />
    error_page   500 502 503 504  /50x.html;<br />
    location = /50x.html {<br />
        root   html;<br />
    }<br />
    location ~ \.php&#36; {<br />
        fastcgi_pass   127.0.0.1:9000;<br />
        fastcgi_index  index.php;<br />
        fastcgi_param SCRIPT_FILENAME  &#36;document_root&#36;fastcgi_script_name;<br />
        include        fastcgi_params;<br />
    }<br />
}<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[php修改上传附件大小限制]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=66</link>
			<pubDate>Thu, 19 Oct 2023 14:37:48 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=66</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
<br />
打开php.ini，首先找到<br />
file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开<br />
upload_tmp_dir ;文件上传至服务器上存储临时文件的地方，如果没指定就会用系统默认的临时文件夹<br />
upload_max_filesize = 100m ;望文生意，即允许上传文件大小的最大值。默认为2M<br />
post_max_size = 100m ;指通过表单POST给PHP的所能接收的最大值，包括表单里的所有值。默认为8M<br />
一般地，设置好上述四个参数后，上传&lt;=8M的文件是不成问题，在网络正常的情况下。<br />
但如果要上传&gt;100M的大体积文件，只设置上述四项还一定能行的通。<br />
进一步配置以下的参数<br />
max_execution_time = 1800 ;每个PHP页面运行的最大时间值(秒)，默认30秒<br />
max_input_time = 1800 ;每个PHP页面接收数据所需的最大时间，默认60秒<br />
memory_limit = 100m ;每个PHP页面所吃掉的最大内存，默认100M<br />
把上述参数修改后，在网络所允许的正常情况下，就可以上传大体积文件了<br />
查询命令：  find / -name 'php.ini';<br />
                    find / -name 'nginx.conf';<br />
<br />
max_execution_time = 1800<br />
max_input_time = 1800<br />
memory_limit = 32m<br />
file_uploads = on<br />
upload_tmp_dir = /tmp<br />
upload_max_filesize = 32m<br />
post_max_size = 32m<br />
 <br />
附： 可能还需要的修改 nginx 的配置。<br />
---------------------------------------------------------------------------------<br />
   整体需要修改的部分：<br />
修改/etc/nginx/nginx.conf加入client_max_body_size 100m;<br />
重载nginx配置文件：nginx -t；nginx -s reload；<br />
修改/etc/php/7.0/fpm/php.ini设置post_max_size = 100M；upload_max_filesize = 100M<br />
重载php-fpm：/etc/init.d/php7.0-fpm reload<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
<br />
打开php.ini，首先找到<br />
file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开<br />
upload_tmp_dir ;文件上传至服务器上存储临时文件的地方，如果没指定就会用系统默认的临时文件夹<br />
upload_max_filesize = 100m ;望文生意，即允许上传文件大小的最大值。默认为2M<br />
post_max_size = 100m ;指通过表单POST给PHP的所能接收的最大值，包括表单里的所有值。默认为8M<br />
一般地，设置好上述四个参数后，上传&lt;=8M的文件是不成问题，在网络正常的情况下。<br />
但如果要上传&gt;100M的大体积文件，只设置上述四项还一定能行的通。<br />
进一步配置以下的参数<br />
max_execution_time = 1800 ;每个PHP页面运行的最大时间值(秒)，默认30秒<br />
max_input_time = 1800 ;每个PHP页面接收数据所需的最大时间，默认60秒<br />
memory_limit = 100m ;每个PHP页面所吃掉的最大内存，默认100M<br />
把上述参数修改后，在网络所允许的正常情况下，就可以上传大体积文件了<br />
查询命令：  find / -name 'php.ini';<br />
                    find / -name 'nginx.conf';<br />
<br />
max_execution_time = 1800<br />
max_input_time = 1800<br />
memory_limit = 32m<br />
file_uploads = on<br />
upload_tmp_dir = /tmp<br />
upload_max_filesize = 32m<br />
post_max_size = 32m<br />
 <br />
附： 可能还需要的修改 nginx 的配置。<br />
---------------------------------------------------------------------------------<br />
   整体需要修改的部分：<br />
修改/etc/nginx/nginx.conf加入client_max_body_size 100m;<br />
重载nginx配置文件：nginx -t；nginx -s reload；<br />
修改/etc/php/7.0/fpm/php.ini设置post_max_size = 100M；upload_max_filesize = 100M<br />
重载php-fpm：/etc/init.d/php7.0-fpm reload<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Ubuntu 自建安装Nginx+MySQL+PHP环境]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=65</link>
			<pubDate>Thu, 19 Oct 2023 14:35:15 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=65</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
概述<br />
本文介绍在ECS服务器Ubuntu系统中如何安装Nginx+MySQL+PHP环境。<br />
<br />
详细信息<br />
重要<br />
阿里云提醒您：<br />
如果您对实例或数据有修改、变更等风险操作，务必注意实例的容灾、容错能力，确保数据安全。<br />
如果您对实例（包括但不限于ECS、RDS）等进行配置与数据修改，建议提前创建快照或开启RDS日志备份等功能。<br />
如果您在阿里云平台授权或者提交过登录账号、密码等安全信息，建议您及时修改。<br />
通过管理终端连接Linux实例，详情请参见ECS远程连接操作指南。<br />
<br />
安装Nginx+MySQL+PHP环境<br />
<br />
以下示例使用的相关版本资源如下：<br />
<br />
操作系统：Ubuntu 22.04 64位<br />
Nginx版本：<br />
MySQL版本：<br />
PHP版本：<br />
说明<br />
以下示例以Ubuntu 22.04 64位为例进行安装，其它Ubuntu版本安装可参考同样步骤进行安装，主要区别在于yum安装Nginx、MySQL、PHP时的版本不同，部分配置文件以及启动命令不同。对于不同系统版本安装时的注意事项会在部署文档中标明。<br />
Nginx、MySQL、PHP使用yum安装时，可能会因为YUM源变化而安装其它版本，具体以下载时使用的YUM源为准。<br />
步骤一：安装Nginx<br />
<br />
运行以下命令，更新Ubuntu系统内的软件包。<br />
 sudo apt update<br />
运行以下命令，安装Nginx。<br />
 sudo apt -y install nginx<br />
运行以下命令，查看Nginx版本。<br />
 sudo nginx -v<br />
返回结果如下所示，查看到Nginx的版本信息为1.18.0。同时也表示Nginx已成功安装。<br />
 nginx version: nginx/1.18.0 (Ubuntu)<br />
步骤二：安装MySQL<br />
<br />
运行以下命令，安装MySQL。<br />
 sudo apt -y install mysql-server<br />
运行以下命令，查看MySQL版本。<br />
 sudo mysql -V<br />
返回结果如下所示，表示MySQL已成功安装，MySQL的版本为8.0.27。<br />
 mysql  Ver 8.0.27-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))<br />
步骤三：安装并配置PHP<br />
<br />
安装PHP。<br />
运行以下命令，安装PHP。<br />
 sudo apt -y install php-fpm<br />
运行以下命令，查看PHP版本。<br />
 sudo php -v<br />
返回结果如下所示，表示PHP已成功安装，可查看到PHP版本为7.4.3。<br />
 PHP 7.4.3 (cli) (built: Nov 25 2021 23:16:22) ( NTS )<br />
Copyright &copy; The PHP Group<br />
Zend Engine v3.4.0, Copyright &copy; Zend Technologies<br />
    with Zend OPcache v7.4.3, Copyright &copy;, by Zend Technologies<br />
修改Nginx配置文件以支持PHP。<br />
运行以下命令，打开Nginx默认的配置文件。<br />
 sudo vim /etc/nginx/sites-enabled/default<br />
按i进入编辑模式，修改Nginx配置文件。<br />
在server{}内，找到index开头的配置行，在该行中添加index.php。<br />
nginx-indexphp<br />
在server{}内找到location ~ \.php&#36; {}，去除以下配置行的注释符号。<br />
 location ~ \.php&#36; {<br />
        include snippets/fastcgi-php.conf;<br />
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;<br />
}<br />
nginx-php<br />
按Esc退出编辑模式，然后输入:wq并按Enter键，保存并退出文件。<br />
运行以下命令，重启Nginx服务。<br />
 sudo systemctl restart nginx.service<br />
配置PHP。<br />
运行以下命令，在Nginx网站根目录中，新建phpinfo.php文件。<br />
 sudo vi &lt;网站根目录&gt;/phpinfo.php<br />
&lt;网站根目录&gt;为变量，可通过Nginx配置文件查看。本教程中Nginx配置文件为默认文件/etc/nginx/sites-enabled/default，您可以运行cat /etc/nginx/sites-enabled/default命令查看文件内容，其中如下图所示的/var/www/html部分即为网站根目录。网站根目录因此，对应的运行命令为：<br />
 sudo vi /var/www/html/phpinfo.php<br />
按i进入编辑模式，修改配置文件，添加或修改以下信息。<br />
 &lt;?php echo phpinfo(); ?&gt;<br />
其中phpinfo()函数会展示PHP的所有配置信息。<br />
按Esc退出编辑模式，然后输入:wq并按Enter键，保存并退出文件。<br />
运行以下命令，启动PHP。<br />
 sudo systemctl start php7.4-fpm<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
概述<br />
本文介绍在ECS服务器Ubuntu系统中如何安装Nginx+MySQL+PHP环境。<br />
<br />
详细信息<br />
重要<br />
阿里云提醒您：<br />
如果您对实例或数据有修改、变更等风险操作，务必注意实例的容灾、容错能力，确保数据安全。<br />
如果您对实例（包括但不限于ECS、RDS）等进行配置与数据修改，建议提前创建快照或开启RDS日志备份等功能。<br />
如果您在阿里云平台授权或者提交过登录账号、密码等安全信息，建议您及时修改。<br />
通过管理终端连接Linux实例，详情请参见ECS远程连接操作指南。<br />
<br />
安装Nginx+MySQL+PHP环境<br />
<br />
以下示例使用的相关版本资源如下：<br />
<br />
操作系统：Ubuntu 22.04 64位<br />
Nginx版本：<br />
MySQL版本：<br />
PHP版本：<br />
说明<br />
以下示例以Ubuntu 22.04 64位为例进行安装，其它Ubuntu版本安装可参考同样步骤进行安装，主要区别在于yum安装Nginx、MySQL、PHP时的版本不同，部分配置文件以及启动命令不同。对于不同系统版本安装时的注意事项会在部署文档中标明。<br />
Nginx、MySQL、PHP使用yum安装时，可能会因为YUM源变化而安装其它版本，具体以下载时使用的YUM源为准。<br />
步骤一：安装Nginx<br />
<br />
运行以下命令，更新Ubuntu系统内的软件包。<br />
 sudo apt update<br />
运行以下命令，安装Nginx。<br />
 sudo apt -y install nginx<br />
运行以下命令，查看Nginx版本。<br />
 sudo nginx -v<br />
返回结果如下所示，查看到Nginx的版本信息为1.18.0。同时也表示Nginx已成功安装。<br />
 nginx version: nginx/1.18.0 (Ubuntu)<br />
步骤二：安装MySQL<br />
<br />
运行以下命令，安装MySQL。<br />
 sudo apt -y install mysql-server<br />
运行以下命令，查看MySQL版本。<br />
 sudo mysql -V<br />
返回结果如下所示，表示MySQL已成功安装，MySQL的版本为8.0.27。<br />
 mysql  Ver 8.0.27-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))<br />
步骤三：安装并配置PHP<br />
<br />
安装PHP。<br />
运行以下命令，安装PHP。<br />
 sudo apt -y install php-fpm<br />
运行以下命令，查看PHP版本。<br />
 sudo php -v<br />
返回结果如下所示，表示PHP已成功安装，可查看到PHP版本为7.4.3。<br />
 PHP 7.4.3 (cli) (built: Nov 25 2021 23:16:22) ( NTS )<br />
Copyright &copy; The PHP Group<br />
Zend Engine v3.4.0, Copyright &copy; Zend Technologies<br />
    with Zend OPcache v7.4.3, Copyright &copy;, by Zend Technologies<br />
修改Nginx配置文件以支持PHP。<br />
运行以下命令，打开Nginx默认的配置文件。<br />
 sudo vim /etc/nginx/sites-enabled/default<br />
按i进入编辑模式，修改Nginx配置文件。<br />
在server{}内，找到index开头的配置行，在该行中添加index.php。<br />
nginx-indexphp<br />
在server{}内找到location ~ \.php&#36; {}，去除以下配置行的注释符号。<br />
 location ~ \.php&#36; {<br />
        include snippets/fastcgi-php.conf;<br />
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;<br />
}<br />
nginx-php<br />
按Esc退出编辑模式，然后输入:wq并按Enter键，保存并退出文件。<br />
运行以下命令，重启Nginx服务。<br />
 sudo systemctl restart nginx.service<br />
配置PHP。<br />
运行以下命令，在Nginx网站根目录中，新建phpinfo.php文件。<br />
 sudo vi &lt;网站根目录&gt;/phpinfo.php<br />
&lt;网站根目录&gt;为变量，可通过Nginx配置文件查看。本教程中Nginx配置文件为默认文件/etc/nginx/sites-enabled/default，您可以运行cat /etc/nginx/sites-enabled/default命令查看文件内容，其中如下图所示的/var/www/html部分即为网站根目录。网站根目录因此，对应的运行命令为：<br />
 sudo vi /var/www/html/phpinfo.php<br />
按i进入编辑模式，修改配置文件，添加或修改以下信息。<br />
 &lt;?php echo phpinfo(); ?&gt;<br />
其中phpinfo()函数会展示PHP的所有配置信息。<br />
按Esc退出编辑模式，然后输入:wq并按Enter键，保存并退出文件。<br />
运行以下命令，启动PHP。<br />
 sudo systemctl start php7.4-fpm<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[rclone自己申请的账号7天失效的问题]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=60</link>
			<pubDate>Sat, 22 Apr 2023 16:06:23 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=60</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
rclone官方提供的client_id和client_secret可以生成长期稳定的token，个人申请的client_id和client_secret生成的token7天后会过期，需要重新验证很麻烦，建议大家都用rclone提供的开发者id and sercert<br />
<br />
rclone官方client_id：202264815644.apps.googleusercontent.com<br />
rclone官方client_secret：X4Z3ca8xfWDb1Voo-F9a7ZxJ<br />
<br />
<a href="https://blog.tanglu.me/rclone-add-gd-od" target="_blank" rel="noopener" class="mycode_url">https://blog.tanglu.me/rclone-add-gd-od</a><br />
<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
rclone官方提供的client_id和client_secret可以生成长期稳定的token，个人申请的client_id和client_secret生成的token7天后会过期，需要重新验证很麻烦，建议大家都用rclone提供的开发者id and sercert<br />
<br />
rclone官方client_id：202264815644.apps.googleusercontent.com<br />
rclone官方client_secret：X4Z3ca8xfWDb1Voo-F9a7ZxJ<br />
<br />
<a href="https://blog.tanglu.me/rclone-add-gd-od" target="_blank" rel="noopener" class="mycode_url">https://blog.tanglu.me/rclone-add-gd-od</a><br />
<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[使用 Shadowrocket QuantumultX 破解 Emby]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=59</link>
			<pubDate>Fri, 21 Apr 2023 04:50:18 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=59</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
<br />
项目地址:<br />
<a href="https://github.com/qiangxinglin/Emby" target="_blank" rel="noopener" class="mycode_url">https://github.com/qiangxinglin/Emby</a><br />
<br />
配置 Shadowrocket<br />
<br />
打开 Shadowrocket ，选择下面的 配置 ，再点击中间的本地配置文件 default.conf<br />
1<br />
<br />
在弹出菜单中选择 编辑纯文本<br />
2<br />
<br />
把配置翻到最底下<br />
3<br />
<br />
[Script]<br />
EmbyPremiere = type=http-response,script-path= <a href="https://raw.githubusercontent.com/qiangxinglin/Emby/main/scripts/emby.js,pattern=%5Ehttps?:\/\/mb3admin.com\/admin\/service\/registration\/validateDevice,max-size=131072,requires-body=true,timeout=10,enable=true" target="_blank" rel="noopener" class="mycode_url">https://raw.githubusercontent.com/qiangx...nable=true</a><br />
<br />
[MITM]<br />
hostname = mb3admin.com<br />
复制上面的配置填写到红框空白处<br />
<br />
然后点击右上角保存<br />
4<br />
<br />
再点击中间的本地配置文件 default.conf，选择 编辑配置<br />
5<br />
<br />
点击https解密<br />
6<br />
<br />
1.打开https解密开关<br />
<br />
2.点击 生成新的 CA 证书<br />
<br />
3.证书生成后还需要 安装证书<br />
<br />
4.证书下载到设置里后点击 已下载描述文件<br />
<br />
5.点击右上角 安装<br />
<br />
6.在手机 设置 -&gt; 通用 -&gt; 关于本机 -&gt; 证书信任设置，找到刚才安装的 Shadowrocket 证书，将其开关打开<br />
<br />
7.回到 Shadowrocket ，上面显示 系统已信任 ，说明我们正确安装并让系统信任我们的了证书，点右上角的√ 保存<br />
<br />
8.回到 HTTPS 解密页面继续点右上角的 √ 保存<br />
<br />
9.回到 Shadowrocket 首页，点击上面的开关启动<br />
<br />
配置 QuantumultX<br />
<br />
长话短说啦，大概操作和小火箭是相同的<br />
<br />
1.在MitM添加主机名mb3admin.com<br />
2.生成一下证书<br />
3.配置证书(安装描述文件，然后信任证书)<br />
4.点击重写规则，添加一条新规则<br />
5.类型选择script-echo-response<br />
6.用以匹配的URL填写^https?:\/\/mb3admin.com\/admin\/service\/registration\/validateDevice<br />
7.脚本路径填写https://raw.githubusercontent.com/qiangxinglin/Emby/main/scripts/emby.js<br />
8.到这里就结束啦<br />
<br />
非特殊说明，本博所有文章均为博主原创。<br />
如若转载，请注明出处：https://qqb.icu/index.php/38<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
<br />
项目地址:<br />
<a href="https://github.com/qiangxinglin/Emby" target="_blank" rel="noopener" class="mycode_url">https://github.com/qiangxinglin/Emby</a><br />
<br />
配置 Shadowrocket<br />
<br />
打开 Shadowrocket ，选择下面的 配置 ，再点击中间的本地配置文件 default.conf<br />
1<br />
<br />
在弹出菜单中选择 编辑纯文本<br />
2<br />
<br />
把配置翻到最底下<br />
3<br />
<br />
[Script]<br />
EmbyPremiere = type=http-response,script-path= <a href="https://raw.githubusercontent.com/qiangxinglin/Emby/main/scripts/emby.js,pattern=%5Ehttps?:\/\/mb3admin.com\/admin\/service\/registration\/validateDevice,max-size=131072,requires-body=true,timeout=10,enable=true" target="_blank" rel="noopener" class="mycode_url">https://raw.githubusercontent.com/qiangx...nable=true</a><br />
<br />
[MITM]<br />
hostname = mb3admin.com<br />
复制上面的配置填写到红框空白处<br />
<br />
然后点击右上角保存<br />
4<br />
<br />
再点击中间的本地配置文件 default.conf，选择 编辑配置<br />
5<br />
<br />
点击https解密<br />
6<br />
<br />
1.打开https解密开关<br />
<br />
2.点击 生成新的 CA 证书<br />
<br />
3.证书生成后还需要 安装证书<br />
<br />
4.证书下载到设置里后点击 已下载描述文件<br />
<br />
5.点击右上角 安装<br />
<br />
6.在手机 设置 -&gt; 通用 -&gt; 关于本机 -&gt; 证书信任设置，找到刚才安装的 Shadowrocket 证书，将其开关打开<br />
<br />
7.回到 Shadowrocket ，上面显示 系统已信任 ，说明我们正确安装并让系统信任我们的了证书，点右上角的√ 保存<br />
<br />
8.回到 HTTPS 解密页面继续点右上角的 √ 保存<br />
<br />
9.回到 Shadowrocket 首页，点击上面的开关启动<br />
<br />
配置 QuantumultX<br />
<br />
长话短说啦，大概操作和小火箭是相同的<br />
<br />
1.在MitM添加主机名mb3admin.com<br />
2.生成一下证书<br />
3.配置证书(安装描述文件，然后信任证书)<br />
4.点击重写规则，添加一条新规则<br />
5.类型选择script-echo-response<br />
6.用以匹配的URL填写^https?:\/\/mb3admin.com\/admin\/service\/registration\/validateDevice<br />
7.脚本路径填写https://raw.githubusercontent.com/qiangxinglin/Emby/main/scripts/emby.js<br />
8.到这里就结束啦<br />
<br />
非特殊说明，本博所有文章均为博主原创。<br />
如若转载，请注明出处：https://qqb.icu/index.php/38<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[青龙删除日志]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=58</link>
			<pubDate>Fri, 07 Apr 2023 15:21:27 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=58</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
1、ql rmlog 3  新建任务，填入即可。<br />
2、其他设置，日志删除频率。<br />
<br />
<br />
<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
1、ql rmlog 3  新建任务，填入即可。<br />
2、其他设置，日志删除频率。<br />
<br />
<br />
<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[自建Bitwarden密码服务器]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=56</link>
			<pubDate>Thu, 16 Mar 2023 09:31:37 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=56</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
docker run -d --name vaultwarden -e ADMIN_TOKEN=SYS_123@ -v /www/wwwroot/passwd.ihenis.com/:/data/ -p 40:80 vaultwarden/server:latest<br />
<br />
chrome的插件，提示用户名、密码不对的，是服务器版本不对，不要用bitwarden，用最新的vaultwarden版本就好了。<br />
<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
docker run -d --name vaultwarden -e ADMIN_TOKEN=SYS_123@ -v /www/wwwroot/passwd.ihenis.com/:/data/ -p 40:80 vaultwarden/server:latest<br />
<br />
chrome的插件，提示用户名、密码不对的，是服务器版本不对，不要用bitwarden，用最新的vaultwarden版本就好了。<br />
<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[用ssh远程备份多个服务器的数据]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=55</link>
			<pubDate>Sun, 12 Mar 2023 04:37:16 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=55</guid>
			<description><![CDATA[<div style="text-align: right;" class="mycode_align"><span style="font-size: 1pt;" class="mycode_size">数据, 对于自己来说无价, 对于别人来说可能一文不值.</span><br />
<br />
<div style="text-align: left;" class="mycode_align">对于单个或者服务器进行备份, 每个服务器进行一次设置太过于繁琐,</div>
<br />
<div style="text-align: left;" class="mycode_align">这里给一个简单方便的备份路子,  在一个备份服务器上对多个服务器的数据进行自动备份.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">备份服务器预先准备好openssh-client rsync等等, 需要备份的服务器安装好类似mysqldump, gzip,rsync,openssh-client等软件包</div>
<br />
<div style="text-align: left;" class="mycode_align">首先运行ssh-keygen, 默认一路回车生成一套key, 文件存放于 ~/.ssh/目录下,  一般文件名以id打头, 文件名为.pub的文件内容放到生产服务器上.</div>
<br />
<div style="text-align: left;" class="mycode_align">ssh-keygen -t rsa</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">一根据参数一般会得到类似这样的文件名 id_rsa.pub  id_ecdsa.pub  id_ed25519.pub</div>
<br />
<div style="text-align: left;" class="mycode_align">以id_rsa.pub为例子, 将文件内的文本内容, 写入需要进行备份数据服务器的/root/.ssh/authorized_keys文件内.</div>
<br />
<div style="text-align: left;" class="mycode_align">cat ~/.ssh/id_rsa.pub</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">快速自动shell脚本方案</div>
<br />
<div style="text-align: left;" class="mycode_align">#!/bin/bash</div>
<br />
<div style="text-align: left;" class="mycode_align">setenforce 0 &gt;&gt; /dev/null 2&gt;&amp;1</div>
<br />
<div style="text-align: left;" class="mycode_align">sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config</div>
<br />
<div style="text-align: left;" class="mycode_align">mkdir -p /root/.ssh/</div>
<br />
<div style="text-align: left;" class="mycode_align">cat &gt;&gt;/root/.ssh/authorized_keys&lt;&lt;EOF</div>
<br />
<div style="text-align: left;" class="mycode_align">这里粘贴上cat ~/.ssh/id_rsa.pub的内容</div>
<br />
<div style="text-align: left;" class="mycode_align">EOF</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">然后就是在备份服务器上测试ssh登录是否能免密码进入.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">前期准备做好后, 在备份服务器上开始搞事情直接跑数据备份了.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">备份服务器上开始准备目录以及备份脚本</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">以脚本存放文件名/opt/rsync.sh为例子</div>
<br />
<div style="text-align: left;" class="mycode_align">#/opt/rsync.sh</div>
<br />
<div style="text-align: left;" class="mycode_align">gettime=&#36;(date +%Y-%m-%d-%H:%M)</div>
<br />
<div style="text-align: left;" class="mycode_align">BAKPATH=/opt/backup/archive/&#36;gettime</div>
<br />
<div style="text-align: left;" class="mycode_align">mkdir -p  &#36;BAKPATH/{SERVER1,SERVER2,SERVER3,SERVER4}  #此处以此类推</div>
<br />
<div style="text-align: left;" class="mycode_align">ssh root@SERVER1  'cd /home/webpath/web1.com/; tar -zcf  - ./' | cat &gt; &#36;BAKPATH/SERVER1/web-web1.com-&#36;(date +%Y-%m-%d-%H:%M).tar.gz</div>
<br />
<div style="text-align: left;" class="mycode_align">ssh root@SERVER1  'mysqldump  -u数据库用户名  -p数据库密码 数据库名| gzip' &gt; &#36;BAKPATH/SERVER1/data-web1.com-&#36;(date +%Y-%m-%d-%H:%M).sql.gz</div>
<br />
<div style="text-align: left;" class="mycode_align">#这里ssh以此类推SERVER1, SERVER3 , SERVER4, 有多少个服务器就加多少个服务器</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">保存好文件后执行sh /opt/rsync.sh, 测试备份是否正常.</div>
<br />
<div style="text-align: left;" class="mycode_align">数据库账号密码安全问题可以在服务器上写一个配置文件用shell去读去, 不用在ssh里面写明文.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">测试正常后丢cron自动跑定时任务</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">#crontab -e</div>
<br />
<div style="text-align: left;" class="mycode_align">0 0 * * 0 sh /opt/rsync.sh</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">上面提到了rsync, 也可以加在脚本/opt/rsync.sh里面用上, 不论是将远程数据同步回来, 还是再把本地数据同步出去一份.</div>
<br />
<div style="text-align: left;" class="mycode_align">如果网站体积大的建议把tar打包换成rsync同步备份.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">mkdir /opt/backup/{SERVER1,SERVER2,SERVER3,SERVER4}/web</div>
<br />
<div style="text-align: left;" class="mycode_align">rsync -avPq  root@SERVER2:/home/webpath/web2.com/  /opt/backup/SERVER2/web  #将远程的数据同步回备份服务器.</div>
<br />
<div style="text-align: left;" class="mycode_align">rsync -avPq  /opt/backup/  root@SERVER4:/opt/backup/  #将备份服务器的数据同步到另外的服务器上去</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">所有的脚本往/opt/rsync.sh里面丢, 一次控制N个服务器, 要更加的安全可以把备份服务器丢在nat的内网里面.</div>
</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: right;" class="mycode_align"><span style="font-size: 1pt;" class="mycode_size">数据, 对于自己来说无价, 对于别人来说可能一文不值.</span><br />
<br />
<div style="text-align: left;" class="mycode_align">对于单个或者服务器进行备份, 每个服务器进行一次设置太过于繁琐,</div>
<br />
<div style="text-align: left;" class="mycode_align">这里给一个简单方便的备份路子,  在一个备份服务器上对多个服务器的数据进行自动备份.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">备份服务器预先准备好openssh-client rsync等等, 需要备份的服务器安装好类似mysqldump, gzip,rsync,openssh-client等软件包</div>
<br />
<div style="text-align: left;" class="mycode_align">首先运行ssh-keygen, 默认一路回车生成一套key, 文件存放于 ~/.ssh/目录下,  一般文件名以id打头, 文件名为.pub的文件内容放到生产服务器上.</div>
<br />
<div style="text-align: left;" class="mycode_align">ssh-keygen -t rsa</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">一根据参数一般会得到类似这样的文件名 id_rsa.pub  id_ecdsa.pub  id_ed25519.pub</div>
<br />
<div style="text-align: left;" class="mycode_align">以id_rsa.pub为例子, 将文件内的文本内容, 写入需要进行备份数据服务器的/root/.ssh/authorized_keys文件内.</div>
<br />
<div style="text-align: left;" class="mycode_align">cat ~/.ssh/id_rsa.pub</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">快速自动shell脚本方案</div>
<br />
<div style="text-align: left;" class="mycode_align">#!/bin/bash</div>
<br />
<div style="text-align: left;" class="mycode_align">setenforce 0 &gt;&gt; /dev/null 2&gt;&amp;1</div>
<br />
<div style="text-align: left;" class="mycode_align">sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config</div>
<br />
<div style="text-align: left;" class="mycode_align">mkdir -p /root/.ssh/</div>
<br />
<div style="text-align: left;" class="mycode_align">cat &gt;&gt;/root/.ssh/authorized_keys&lt;&lt;EOF</div>
<br />
<div style="text-align: left;" class="mycode_align">这里粘贴上cat ~/.ssh/id_rsa.pub的内容</div>
<br />
<div style="text-align: left;" class="mycode_align">EOF</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">然后就是在备份服务器上测试ssh登录是否能免密码进入.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">前期准备做好后, 在备份服务器上开始搞事情直接跑数据备份了.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">备份服务器上开始准备目录以及备份脚本</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">以脚本存放文件名/opt/rsync.sh为例子</div>
<br />
<div style="text-align: left;" class="mycode_align">#/opt/rsync.sh</div>
<br />
<div style="text-align: left;" class="mycode_align">gettime=&#36;(date +%Y-%m-%d-%H:%M)</div>
<br />
<div style="text-align: left;" class="mycode_align">BAKPATH=/opt/backup/archive/&#36;gettime</div>
<br />
<div style="text-align: left;" class="mycode_align">mkdir -p  &#36;BAKPATH/{SERVER1,SERVER2,SERVER3,SERVER4}  #此处以此类推</div>
<br />
<div style="text-align: left;" class="mycode_align">ssh root@SERVER1  'cd /home/webpath/web1.com/; tar -zcf  - ./' | cat &gt; &#36;BAKPATH/SERVER1/web-web1.com-&#36;(date +%Y-%m-%d-%H:%M).tar.gz</div>
<br />
<div style="text-align: left;" class="mycode_align">ssh root@SERVER1  'mysqldump  -u数据库用户名  -p数据库密码 数据库名| gzip' &gt; &#36;BAKPATH/SERVER1/data-web1.com-&#36;(date +%Y-%m-%d-%H:%M).sql.gz</div>
<br />
<div style="text-align: left;" class="mycode_align">#这里ssh以此类推SERVER1, SERVER3 , SERVER4, 有多少个服务器就加多少个服务器</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">保存好文件后执行sh /opt/rsync.sh, 测试备份是否正常.</div>
<br />
<div style="text-align: left;" class="mycode_align">数据库账号密码安全问题可以在服务器上写一个配置文件用shell去读去, 不用在ssh里面写明文.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">测试正常后丢cron自动跑定时任务</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">#crontab -e</div>
<br />
<div style="text-align: left;" class="mycode_align">0 0 * * 0 sh /opt/rsync.sh</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">上面提到了rsync, 也可以加在脚本/opt/rsync.sh里面用上, 不论是将远程数据同步回来, 还是再把本地数据同步出去一份.</div>
<br />
<div style="text-align: left;" class="mycode_align">如果网站体积大的建议把tar打包换成rsync同步备份.</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">mkdir /opt/backup/{SERVER1,SERVER2,SERVER3,SERVER4}/web</div>
<br />
<div style="text-align: left;" class="mycode_align">rsync -avPq  root@SERVER2:/home/webpath/web2.com/  /opt/backup/SERVER2/web  #将远程的数据同步回备份服务器.</div>
<br />
<div style="text-align: left;" class="mycode_align">rsync -avPq  /opt/backup/  root@SERVER4:/opt/backup/  #将备份服务器的数据同步到另外的服务器上去</div>
<br />
<br />
<div style="text-align: left;" class="mycode_align">所有的脚本往/opt/rsync.sh里面丢, 一次控制N个服务器, 要更加的安全可以把备份服务器丢在nat的内网里面.</div>
</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[PBOOTCMS模板如何实现产品置顶]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=53</link>
			<pubDate>Mon, 10 Oct 2022 10:29:04 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=53</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
找到文件夹 templates defalut index.html<br />
<br />
用编辑器打开index.html文件，找到产品的地方<br />
<br />
&lt;div class="boxlt_li"&gt;<br />
   &lt;ul&gt;<br />
   {pboot:list scode=34 num=10 <span style="font-weight: bold;" class="mycode_b">order=date</span>}<br />
   &lt;li&gt;&lt;i&gt;[list:i]&lt;/i&gt;&lt;a href="[list:link]" title="[list:link]" </span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: 1pt;" class="mycode_size">     </span><span style="font-size: large;" class="mycode_size">{/pboot:list}</span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size">   &lt;/ul&gt;</span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size">   &lt;/div&gt;</span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size">   &lt;/div&gt;</span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"> </span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size">将order=sorting 改成  istop=1<br />
<br />
如果要调用推荐产品，用这个标签  isrecommend=1<br />
<br />
头条产品：isheadline=1<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
找到文件夹 templates defalut index.html<br />
<br />
用编辑器打开index.html文件，找到产品的地方<br />
<br />
&lt;div class="boxlt_li"&gt;<br />
   &lt;ul&gt;<br />
   {pboot:list scode=34 num=10 <span style="font-weight: bold;" class="mycode_b">order=date</span>}<br />
   &lt;li&gt;&lt;i&gt;[list:i]&lt;/i&gt;&lt;a href="[list:link]" title="[list:link]" </span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: 1pt;" class="mycode_size">     </span><span style="font-size: large;" class="mycode_size">{/pboot:list}</span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size">   &lt;/ul&gt;</span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size">   &lt;/div&gt;</span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size">   &lt;/div&gt;</span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"> </span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size">将order=sorting 改成  istop=1<br />
<br />
如果要调用推荐产品，用这个标签  isrecommend=1<br />
<br />
头条产品：isheadline=1<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[PVE安装到EMMC卡上]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=51</link>
			<pubDate>Mon, 19 Sep 2022 07:50:53 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=51</guid>
			<description><![CDATA[找到<br />
} elsif (&#36;dev =~ m|^/dev/[^/]+/hd[a-z]&#36;|) {<br />
    return "&#36;{dev}&#36;partnum";<br />
} elsif (&#36;dev =~ m|^/dev/nvme\d+n\d+&#36;|) {<br />
    return "&#36;{dev}p&#36;partnum";<br />
} else {<br />
    die "unable to get device for partition &#36;partnum on device &#36;dev\n";<br />
}<br />
<br />
改为<br />
<br />
} elsif (&#36;dev =~ m|^/dev/[^/]+/hd[a-z]&#36;|) {<br />
    return "&#36;{dev}&#36;partnum";<br />
} elsif (&#36;dev =~ m|^/dev/nvme\d+n\d+&#36;|) {<br />
    return "&#36;{dev}p&#36;partnum";<br />
} elsif (&#36;dev =~ m|^/dev/mmcblk\d+&#36;|) {<br />
    return "&#36;{dev}p&#36;partnum";<br />
} else {<br />
    die "unable to get device for partition &#36;partnum on device &#36;dev\n";<br />
}]]></description>
			<content:encoded><![CDATA[找到<br />
} elsif (&#36;dev =~ m|^/dev/[^/]+/hd[a-z]&#36;|) {<br />
    return "&#36;{dev}&#36;partnum";<br />
} elsif (&#36;dev =~ m|^/dev/nvme\d+n\d+&#36;|) {<br />
    return "&#36;{dev}p&#36;partnum";<br />
} else {<br />
    die "unable to get device for partition &#36;partnum on device &#36;dev\n";<br />
}<br />
<br />
改为<br />
<br />
} elsif (&#36;dev =~ m|^/dev/[^/]+/hd[a-z]&#36;|) {<br />
    return "&#36;{dev}&#36;partnum";<br />
} elsif (&#36;dev =~ m|^/dev/nvme\d+n\d+&#36;|) {<br />
    return "&#36;{dev}p&#36;partnum";<br />
} elsif (&#36;dev =~ m|^/dev/mmcblk\d+&#36;|) {<br />
    return "&#36;{dev}p&#36;partnum";<br />
} else {<br />
    die "unable to get device for partition &#36;partnum on device &#36;dev\n";<br />
}]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[上传自己的docker]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=50</link>
			<pubDate>Sun, 28 Aug 2022 08:19:09 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=50</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
下载docker：<br />
docker pull bitwardenrs/server:latest<br />
修改tag：<br />
docker tag bitwardenrs/server:latest adahrljp/bitwardenrs:latest<br />
上传docker：<br />
docker push adahrljp/bitwardenrs:latest<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
下载docker：<br />
docker pull bitwardenrs/server:latest<br />
修改tag：<br />
docker tag bitwardenrs/server:latest adahrljp/bitwardenrs:latest<br />
上传docker：<br />
docker push adahrljp/bitwardenrs:latest<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Linux 导入、导出 MySQL 数据库命令]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=48</link>
			<pubDate>Sun, 21 Aug 2022 08:15:37 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=48</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
一、导出数据库<br />
<br />
1、导出完整数据：表结构+数据<br />
Linux 下可以使用 mysqldump 命令来导出数据库，语法格式如下：<br />
mysqldump -u用户名 -p 数据库名 &gt; 数据库名.sql<br />
以下命令可以导出 abc 数据库的数据和表结构：<br />
<br />
# /usr/local/mysql/bin/mysqldump -uroot -p abc &gt; abc.sql<br />
按下回车键后会提示输入密码，输入即可。<br />
<br />
注意：mysqldump 命令路径是根据你 MySQL 安装路径决定的。<br />
<br />
2、只导出表结构<br />
如果你只需要导出 MySQL 的数据表结构，可以使用 -d 选项，格式如下：<br />
<br />
mysqldump -u用户名 -p -d 数据库名 &gt; 数据库名.sql<br />
以下命令可以导出 abc 数据库的表结构：<br />
<br />
#/usr/local/mysql/bin/mysqldump -uroot -p -d abc &gt; abc.sql<br />
<br />
二、导入数据库<br />
使用 mysql 命令导入<br />
使用 mysql 命令导入数据库格式如下：<br />
<br />
mysql -u用户名 -p 数据库名 &lt; 数据库名.sql<br />
以下实例将备份的数据库 abc.sql 导入到数据库中：<br />
<br />
# mysql -uroot -p123456 &lt; abc.sql<br />
使用 source 命令导入<br />
使用 source 命令需要我们先登录到 mysql 中，并创建一个空的数据库：<br />
<br />
mysql&gt; create database abc; # 创建数据库<br />
mysql&gt; use abc; # 使用已创建的数据库<br />
mysql&gt; set names utf8; # 设置编码<br />
mysql&gt; source /home/abc/abc.sql # 导入备份数据库<br />
注意你备份的 sql 文件路径。<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
一、导出数据库<br />
<br />
1、导出完整数据：表结构+数据<br />
Linux 下可以使用 mysqldump 命令来导出数据库，语法格式如下：<br />
mysqldump -u用户名 -p 数据库名 &gt; 数据库名.sql<br />
以下命令可以导出 abc 数据库的数据和表结构：<br />
<br />
# /usr/local/mysql/bin/mysqldump -uroot -p abc &gt; abc.sql<br />
按下回车键后会提示输入密码，输入即可。<br />
<br />
注意：mysqldump 命令路径是根据你 MySQL 安装路径决定的。<br />
<br />
2、只导出表结构<br />
如果你只需要导出 MySQL 的数据表结构，可以使用 -d 选项，格式如下：<br />
<br />
mysqldump -u用户名 -p -d 数据库名 &gt; 数据库名.sql<br />
以下命令可以导出 abc 数据库的表结构：<br />
<br />
#/usr/local/mysql/bin/mysqldump -uroot -p -d abc &gt; abc.sql<br />
<br />
二、导入数据库<br />
使用 mysql 命令导入<br />
使用 mysql 命令导入数据库格式如下：<br />
<br />
mysql -u用户名 -p 数据库名 &lt; 数据库名.sql<br />
以下实例将备份的数据库 abc.sql 导入到数据库中：<br />
<br />
# mysql -uroot -p123456 &lt; abc.sql<br />
使用 source 命令导入<br />
使用 source 命令需要我们先登录到 mysql 中，并创建一个空的数据库：<br />
<br />
mysql&gt; create database abc; # 创建数据库<br />
mysql&gt; use abc; # 使用已创建的数据库<br />
mysql&gt; set names utf8; # 设置编码<br />
mysql&gt; source /home/abc/abc.sql # 导入备份数据库<br />
注意你备份的 sql 文件路径。<br />
<br />
</span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Docker 备份、恢复及迁移]]></title>
			<link>https://bbs.mjjjd.eu.org/showthread.php?tid=47</link>
			<pubDate>Sun, 21 Aug 2022 08:15:02 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://bbs.mjjjd.eu.org/member.php?action=profile&uid=1">adahrzgj</a>]]></dc:creator>
			<guid isPermaLink="false">https://bbs.mjjjd.eu.org/showthread.php?tid=47</guid>
			<description><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
Docker—备份、恢复及迁移<br />
用容器生成镜像<br />
<br />
[root@git docker]# docker ps<br />
CONTAINER ID        IMAGE                    COMMAND            CREATED            STATUS                PORTS                                                            NAMES<br />
e950a988d058        twang2218/gitlab-ce-zh  "/assets/wrapper"  2 hours ago        Up 2 hours (healthy)  0.0.0.0:80-&gt;80/tcp, 0.0.0.0:443-&gt;443/tcp, 0.0.0.0:2222-&gt;22/tcp  gitlab-wahaha<br />
[root@git docker]# docker commit e950a988d058 gitalb-zh<br />
sha256:dd61a1ec3cdc782d6076e47afc10a35e19700a9ad56df6630a8c1de1c1c105c3<br />
[root@git docker]# docker images<br />
REPOSITORY                        TAG                IMAGE ID            CREATED            SIZE<br />
gitalb-zh                          latest              dd61a1ec3cdc        6 seconds ago      1.72 GB<br />
docker.io/twang2218/gitlab-ce-zh  latest              1f71f185271a        9 days ago          1.63 GB<br />
<br />
备份：<br />
<br />
查看镜像<br />
<br />
[root@git docker]# docker images<br />
REPOSITORY                        TAG                IMAGE ID            CREATED            SIZE<br />
docker.io/twang2218/gitlab-ce-zh  latest              1f71f185271a        9 days ago          1.63 GB<br />
docker save -o [tar包真实路径] [镜像名 ]（ID也可以）<br />
ocker save -o /opt/docker-gitlab-ce-zh.tar  docker.io/twang2218/gitlab-ce-zh<br />
<br />
恢复：<br />
<br />
docker load -i [tar包真实路径]<br />
<br />
docker load -i /opt/docker-gitlab-ce-zh.tar<br />
<br />
导出：是根据容器的  ID  进行导出镜像<br />
<br />
[root@git docker]# docker ps  -a<br />
CONTAINER ID        IMAGE                    COMMAND            CREATED            STATUS                PORTS                                                            NAMES<br />
e950a988d058        twang2218/gitlab-ce-zh  "/assets/wrapper"  3 hours ago        Up 3 hours (healthy)  0.0.0.0:80-&gt;80/tcp, 0.0.0.0:443-&gt;443/tcp, 0.0.0.0:2222-&gt;22/tcp  gitlab-wahaha<br />
[root@git docker]# docker export e950a988d058 &gt; /opt/gitlab-zh.tar<br />
[root@git docker]# ls -lh /opt/<br />
total 3.1G<br />
-rw------- 1 root root 1.7G Mar 20 02:16 docker-gitlab-ce-zh.tar<br />
-rw-r--r-- 1 root root 1.5G Mar 20 02:38 gitlab-zh.tar<br />
<br />
可以看出导出的镜像比备份的镜像小很多，是因为导出的镜像没历史数据，不能回滚<br />
<br />
导入：<br />
<br />
[root@git docker]# docker import - git-mast &lt; /opt/gitlab-zh.tar<br />
git-mast镜像名（注意中间的  -  ）<br />
<br />
[root@git docker]# docker images<br />
REPOSITORY                        TAG                IMAGE ID            CREATED            SIZE<br />
git-mast                          latest              6dfab05161f9        14 seconds ago      1.49 GB<br />
docker/gitlab-zh                  latest              aebe317ba2a3        16 minutes ago      1.72 GB<br />
gitalb-zh                          latest              dd61a1ec3cdc        25 minutes ago      1.72 GB<br />
docker.io/twang2218/gitlab-ce-zh  latest              1f71f185271a        9 days ago          1.63 GB<br />
<br />
注：导出 export 与 保存 save 的区别<br />
<br />
(1).export导出的镜像文件大小  小于 save保存的镜像<br />
<br />
(2).export 导出（import导入）是根据容器拿到的镜像，再导入时会丢失镜像所有的历史，所以无法进行回滚操作（docker tag &lt;LAYER ID&gt; &lt;IMAGE NAME&gt;）；而save保存（load加载）的镜像，没有丢失镜像的历史，可以回滚到之前的层（layer）。（查看方式：docker images --tree）<br />
<br />
</span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: left;" class="mycode_align"><span style="font-size: large;" class="mycode_size"><br />
Docker—备份、恢复及迁移<br />
用容器生成镜像<br />
<br />
[root@git docker]# docker ps<br />
CONTAINER ID        IMAGE                    COMMAND            CREATED            STATUS                PORTS                                                            NAMES<br />
e950a988d058        twang2218/gitlab-ce-zh  "/assets/wrapper"  2 hours ago        Up 2 hours (healthy)  0.0.0.0:80-&gt;80/tcp, 0.0.0.0:443-&gt;443/tcp, 0.0.0.0:2222-&gt;22/tcp  gitlab-wahaha<br />
[root@git docker]# docker commit e950a988d058 gitalb-zh<br />
sha256:dd61a1ec3cdc782d6076e47afc10a35e19700a9ad56df6630a8c1de1c1c105c3<br />
[root@git docker]# docker images<br />
REPOSITORY                        TAG                IMAGE ID            CREATED            SIZE<br />
gitalb-zh                          latest              dd61a1ec3cdc        6 seconds ago      1.72 GB<br />
docker.io/twang2218/gitlab-ce-zh  latest              1f71f185271a        9 days ago          1.63 GB<br />
<br />
备份：<br />
<br />
查看镜像<br />
<br />
[root@git docker]# docker images<br />
REPOSITORY                        TAG                IMAGE ID            CREATED            SIZE<br />
docker.io/twang2218/gitlab-ce-zh  latest              1f71f185271a        9 days ago          1.63 GB<br />
docker save -o [tar包真实路径] [镜像名 ]（ID也可以）<br />
ocker save -o /opt/docker-gitlab-ce-zh.tar  docker.io/twang2218/gitlab-ce-zh<br />
<br />
恢复：<br />
<br />
docker load -i [tar包真实路径]<br />
<br />
docker load -i /opt/docker-gitlab-ce-zh.tar<br />
<br />
导出：是根据容器的  ID  进行导出镜像<br />
<br />
[root@git docker]# docker ps  -a<br />
CONTAINER ID        IMAGE                    COMMAND            CREATED            STATUS                PORTS                                                            NAMES<br />
e950a988d058        twang2218/gitlab-ce-zh  "/assets/wrapper"  3 hours ago        Up 3 hours (healthy)  0.0.0.0:80-&gt;80/tcp, 0.0.0.0:443-&gt;443/tcp, 0.0.0.0:2222-&gt;22/tcp  gitlab-wahaha<br />
[root@git docker]# docker export e950a988d058 &gt; /opt/gitlab-zh.tar<br />
[root@git docker]# ls -lh /opt/<br />
total 3.1G<br />
-rw------- 1 root root 1.7G Mar 20 02:16 docker-gitlab-ce-zh.tar<br />
-rw-r--r-- 1 root root 1.5G Mar 20 02:38 gitlab-zh.tar<br />
<br />
可以看出导出的镜像比备份的镜像小很多，是因为导出的镜像没历史数据，不能回滚<br />
<br />
导入：<br />
<br />
[root@git docker]# docker import - git-mast &lt; /opt/gitlab-zh.tar<br />
git-mast镜像名（注意中间的  -  ）<br />
<br />
[root@git docker]# docker images<br />
REPOSITORY                        TAG                IMAGE ID            CREATED            SIZE<br />
git-mast                          latest              6dfab05161f9        14 seconds ago      1.49 GB<br />
docker/gitlab-zh                  latest              aebe317ba2a3        16 minutes ago      1.72 GB<br />
gitalb-zh                          latest              dd61a1ec3cdc        25 minutes ago      1.72 GB<br />
docker.io/twang2218/gitlab-ce-zh  latest              1f71f185271a        9 days ago          1.63 GB<br />
<br />
注：导出 export 与 保存 save 的区别<br />
<br />
(1).export导出的镜像文件大小  小于 save保存的镜像<br />
<br />
(2).export 导出（import导入）是根据容器拿到的镜像，再导入时会丢失镜像所有的历史，所以无法进行回滚操作（docker tag &lt;LAYER ID&gt; &lt;IMAGE NAME&gt;）；而save保存（load加载）的镜像，没有丢失镜像的历史，可以回滚到之前的层（layer）。（查看方式：docker images --tree）<br />
<br />
</span></div>]]></content:encoded>
		</item>
	</channel>
</rss>