Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the simply-static domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/html/wp-includes/functions.php on line 6121
smartroom@me.com

给网站添加https

Let’s Encrypt 是一个开源的证书颁发机构

sudo apt-get update
sudo apt-get install certbot
sudo systemctl stop apache2

sudo certbot certonly --standalone -d www.mixdiy.com

sudo a2enmod ssl
sudo systemctl restart apache2

sudo nano /etc/apache2/sites-available/samplepi.com-ssl.conf

<VirtualHost *:443>
    ServerName www.mixdiy.com
    DocumentRoot /var/www/html
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/samplepi.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/samplepi.com/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/samplepi.com/chain.pem

    # 其他可能的配置项,比如日志配置等
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    # 重定向 HTTP 到 HTTPS
    <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteCond %{SERVER_NAME} =www.mixdiycat.com
        RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]
    </IfModule>
</VirtualHost>

sudo a2ensite samplepi.com-ssl.conf
sudo systemctl reload apache2

sudo nano /etc/apache2/sites-available/samplepi.com.conf

<VirtualHost *:80>
    ServerName samplepi.com
    Redirect permanent / https://samplepi.com/
</VirtualHost>

sudo a2ensite samplepi.com.conf
sudo systemctl reload apache2

关于wordpress的菜单建立

1、先写页面,增加几个页面,注意标题需要用英文,否则找不到

2、创建一个新菜单

3、将页面全部加入菜单

4、对于需要下拉菜单的,在将页面全部加入菜单后再将需要的菜单拖拽至某个菜单下成为子菜单

v2ray

trojan://bpb-trojan@www.vpslook.com:443?security=tls&sni=这里填域名&alpn=h3&fp=randomized&allowlnsecure=1&type=ws&host=这里填域名&path=%2Ftr%3Fed%3D2560#BPB
pip install requests beautifulsoup4
pip install selenium
import requests
from bs4 import BeautifulSoup
from packaging import version # 用于比较版本号

# FOFA 查询页面 URL
FOFA_URL = "https://fofa.info/result?qbase64=aWNvbl9oYXNoPSItMTM1NDAyNzMxOSIgJiYgYXNuPSIxMzMzNSIgJiYgcG9ydD0iNDQzIg%3D%3D"

# 文件名定义
OUTPUT_FILE_1 = "1.txt"
OUTPUT_FILE_2 = "2.txt"
OUTPUT_FILE_OK = "OK.txt"

def get_fofa_results():
"""抓取 FOFA 页面并提取结果地址"""
print("正在抓取 FOFA 页面...")
response = requests.get(FOFA_URL)
if response.status_code != 200:
print(f"无法访问 FOFA 页面,状态码:{response.status_code}")
return []

# 使用 BeautifulSoup 解析 HTML 内容
soup = BeautifulSoup(response.text, 'html.parser')
results = []

# 查找所有结果链接
for link in soup.find_all('a', href=True):
url = link['href']
if url.startswith("https://"): # 提取 https 开头的链接
results.append(url)

print(f"提取到 {len(results)} 个地址")
return results

def append_login_to_urls(input_file, output_file):
"""将地址加上 /login 并保存到新文件"""
print(f"正在处理 {input_file},将地址加上 /login 并保存到 {output_file}...")
with open(input_file, "r", encoding="utf-8") as infile, open(output_file, "w", encoding="utf-8") as outfile:
for line in infile:
url = line.strip() + "/login"
outfile.write(url + "\n")
print(f"已完成地址追加,结果保存到 {output_file}")

def check_bpb_version(input_file, output_file):
"""访问地址并检查 BPB Panel 的版本号"""
print(f"正在验证 {input_file} 中的地址...")
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36"
}
min_version = version.parse("2.5.3") # 最低版本号
with open(input_file, "r", encoding="utf-8") as infile, open(output_file, "w", encoding="utf-8") as outfile:
for line in infile:
url = line.strip()
try:
response = requests.get(url, headers=headers, timeout=10)
if response.status_code == 200 and "BPB Panel" in response.text:
# 提取版本号
raw_version = extract_version(response.text)
if raw_version:
parsed_version = version.parse(raw_version)
if parsed_version > min_version:
print(f"[匹配] {url} (版本号: {parsed_version})")
outfile.write(url + "\n")
except Exception as e:
print(f"[错误] 无法访问 {url},错误:{e}")
print(f"验证完成,符合条件的地址保存到 {output_file}")

def extract_version(html):
"""从 HTML 内容中提取 BPB Panel 的版本号"""
if "BPB Panel" in html:
start_index = html.find("BPB Panel")
# 提取版本号(假设版本号以 2 开头)
version_start = html.find("2", start_index)
version_end = version_start
while version_end < len(html) and (html[version_end].isdigit() or html[version_end] == "."):
version_end += 1
return html[version_start:version_end]
return None

def main():
# 第一步:抓取 FOFA 页面结果并保存到 1.txt
urls = get_fofa_results()
with open(OUTPUT_FILE_1, "w", encoding="utf-8") as f:
for url in urls:
f.write(url + "\n")
print(f"FOFA 页面结果已保存到 {OUTPUT_FILE_1}")

# 第二步:将 1.txt 地址加上 /login 并保存到 2.txt
append_login_to_urls(OUTPUT_FILE_1, OUTPUT_FILE_2)

# 第三步:验证 2.txt 中的地址,符合条件的保存到 OK.txt
check_bpb_version(OUTPUT_FILE_2, OUTPUT_FILE_OK)

if __name__ == "__main__":
main()
https://m.driftmycar.us.kg/login
https://cqbbbsd03.wangbuliao.us.kg/login
https://fdrc.us.kg/login
https://bpb.hlyf.us.kg/login
https://xiaolifeidao2024.us.kg/login
https://a.kexue001.us.kg/login
https://shaelyn.hedley.us.kg/login
https://ytymianban.yitianyang.us.kg/login
https://fj348014800.us.kg/login
https://singbox.xn--54qq5qftl6kf.us.kg/login
ss://YWVzLTI1Ni1jZmI6YW1hem9uc2tyMDU=@34.219.118.99:443#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
vless://bd1c2aac-e80d-46c5-bd18-f304b8dd8a27@151.101.66.219:80?security=none&type=ws&host=XpnTeam.ir&path=@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam/@XpnTeam%3Fed%3D2048#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
vless://f56e4463-f71a-4ab6-8074-534d2b1439c2@151.101.130.219:80?security=none&type=ws&host=snapp.com&path=%2FJoin--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN--Join--HAJIMAMADVPN%3Fed%3D2048#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
vmess://eyJhZGQiOiIxODUuMTkzLjMxLjEwOCIsImFpZCI6MCwiaG9zdCI6ImlwMTguNjkyOTE5OC54eXoiLCJpZCI6IjVmM2YwOWFkLTg5Y2ItNGU5NC1hN2FkLWFhODIzOTkxMzU1NSIsIm5ldCI6IndzIiwicGF0aCI6Ii9naXRodWIuY29tL0FsdmluOTk5OSIsInBvcnQiOjIwODIsInBzIjoi8J+Hs/Cfh7FfTkxf6I235YWwLT7wn4eo8J+Hpl9DQV/liqDmi7/lpKciLCJ0bHMiOiIiLCJ0eXBlIjoiYXV0byIsInNlY3VyaXR5IjoiYXV0byIsInNraXAtY2VydC12ZXJpZnkiOnRydWUsInNuaSI6IiJ9
ss://YWVzLTI1Ni1jZmI6YW1hem9uc2tyMDU=@47.128.246.130:443#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
vmess://eyJhZGQiOiI0NS44LjIxMS4yNDIiLCJhaWQiOjAsImhvc3QiOiJpcDE4LjY5MjkxOTgueHl6IiwiaWQiOiI1ZjNmMDlhZC04OWNiLTRlOTQtYTdhZC1hYTgyMzk5MTM1NTUiLCJuZXQiOiJ3cyIsInBhdGgiOiIvZ2l0aHViLmNvbS9BbHZpbjk5OTkiLCJwb3J0IjoyMDgyLCJwcyI6IvCfh6zwn4enX0dCX+iLseWbvS0+8J+HqPCfh6ZfQ0Ff5Yqg5ou/5aSnIiwidGxzIjoiIiwidHlwZSI6ImF1dG8iLCJzZWN1cml0eSI6ImF1dG8iLCJza2lwLWNlcnQtdmVyaWZ5Ijp0cnVlLCJzbmkiOiIifQ==
vmess://eyJhZGQiOiIxOTAuOTMuMjQ3LjIwMyIsImFpZCI6MCwiaG9zdCI6ImlwMTguNjkyOTE5OC54eXoiLCJpZCI6IjVmM2YwOWFkLTg5Y2ItNGU5NC1hN2FkLWFhODIzOTkxMzU1NSIsIm5ldCI6IndzIiwicGF0aCI6Ii9naXRodWIuY29tL0FsdmluOTk5OSIsInBvcnQiOjIwODIsInBzIjoi8J+HqPCfh7dfQ1Jf5ZOl5pav6L6+6buO5YqgLT7wn4eo8J+Hpl9DQV/liqDmi7/lpKciLCJ0bHMiOiIiLCJ0eXBlIjoiYXV0byIsInNlY3VyaXR5IjoiYXV0byIsInNraXAtY2VydC12ZXJpZnkiOnRydWUsInNuaSI6IiJ9
vless://520061ab-e8e3-4325-9272-8e3583094964@104.18.23.19:8080?security=none&type=ws&host=Operatormci.xn--nevergiveupyeoqkfsggy.bookmarkingonline.info.&path=%2F#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
vmess://eyJhZGQiOiIxOTAuOTMuMjQ2LjE5NiIsImFpZCI6MCwiaG9zdCI6ImlwMTguNjkyOTE5OC54eXoiLCJpZCI6IjVmM2YwOWFkLTg5Y2ItNGU5NC1hN2FkLWFhODIzOTkxMzU1NSIsIm5ldCI6IndzIiwicGF0aCI6Ii9naXRodWIuY29tL0FsdmluOTk5OSIsInBvcnQiOjIwODIsInBzIjoi8J+HqPCfh7dfQ1Jf5ZOl5pav6L6+6buO5YqgLT7wn4eo8J+Hpl9DQV/liqDmi7/lpKciLCJ0bHMiOiIiLCJ0eXBlIjoiYXV0byIsInNlY3VyaXR5IjoiYXV0byIsInNraXAtY2VydC12ZXJpZnkiOnRydWUsInNuaSI6IiJ9
vmess://eyJhZGQiOiIxOTAuOTMuMjQ0LjIyOCIsImFpZCI6MCwiaG9zdCI6ImlwMTguNjkyOTE5OC54eXoiLCJpZCI6IjVmM2YwOWFkLTg5Y2ItNGU5NC1hN2FkLWFhODIzOTkxMzU1NSIsIm5ldCI6IndzIiwicGF0aCI6Ii9naXRodWIuY29tL0FsdmluOTk5OSIsInBvcnQiOjIwODIsInBzIjoi8J+HuvCfh7hfVVNf576O5Zu9LT7wn4eo8J+Hpl9DQV/liqDmi7/lpKciLCJ0bHMiOiIiLCJ0eXBlIjoiYXV0byIsInNlY3VyaXR5IjoiYXV0byIsInNraXAtY2VydC12ZXJpZnkiOnRydWUsInNuaSI6IiJ9
vmess://eyJ2IjoiMiIsInBzIjoi8J+Hq/Cfh7dfRlJf5rOV5Zu9LT7wn4eo8J+Hpl9DQV/liqDmi7/lpKciLCJhZGQiOiIxNDYuMTkuMjEuNjEiLCJwb3J0IjoiMjA4MiIsInR5cGUiOiJub25lIiwiaWQiOiI1ZjNmMDlhZC04OWNiLTRlOTQtYTdhZC1hYTgyMzk5MTM1NTUiLCJhaWQiOiIwIiwibmV0Ijoid3MiLCJwYXRoIjoiL2dpdGh1Yi5jb20vQWx2aW45OTk5IiwiaG9zdCI6ImlwMTguNjkyOTE5OC54eXoiLCJ0bHMiOiIifQ==
ss://YWVzLTI1Ni1nY206UmV4bkJnVTdFVjVBRHhH@38.110.1.3:7002#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
trojan://5e2ce79c-170e-484a-8802-40584a1a3a12@naiu-us.05vr9nyqg5.download:13020?security=tls&sni=cloudflare.node-ssl.cdn-alibaba.com&type=tcp&headerType=none#%E6%9C%AA%E7%9F%A5
vless://16c95530-8276-5477-9e61-799542e502c7@140.248.139.207:80?type=ws&host=ADOLF-ELENA.IR#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
ss://YWVzLTI1Ni1jZmI6YW1hem9uc2tyMDU=@52.43.67.42:443#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
vmess://eyJhZGQiOiIxNTkuMTEyLjIzNS4zNSIsImFpZCI6MCwiaG9zdCI6ImlwMTguNjkyOTE5OC54eXoiLCJpZCI6IjVmM2YwOWFkLTg5Y2ItNGU5NC1hN2FkLWFhODIzOTkxMzU1NSIsIm5ldCI6IndzIiwicGF0aCI6Ii9naXRodWIuY29tL0FsdmluOTk5OSIsInBvcnQiOjIwODIsInBzIjoi8J+HuvCfh7hfVVNf576O5Zu9LT7wn4eo8J+Hpl9DQV/liqDmi7/lpKciLCJ0bHMiOiIiLCJ0eXBlIjoiYXV0byIsInNlY3VyaXR5IjoiYXV0byIsInNraXAtY2VydC12ZXJpZnkiOnRydWUsInNuaSI6IiJ9
vless://6ac07096-da0a-454a-a8b0-c7dc54a9f163@151.101.2.228:80?security=none&type=ws&host=ujhf5r5gub.com&path=ws%2F%3Fed%3D2048#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
ss://YWVzLTI1Ni1jZmI6YW1hem9uc2tyMDU=@54.186.178.129:443#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
ss://YWVzLTI1Ni1jZmI6YW1hem9uc2tyMDU=@18.136.105.175:443#%F0%9F%87%B8%F0%9F%87%AC_SG_%E6%96%B0%E5%8A%A0%E5%9D%A1-%3E%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
ss://Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTowOTgzM2E2Zi00ZDQ2LTQyNmUtODdmZS03NzkzYTU0ODlmODQ=@h-k01.loveroise.com:54000#%F0%9F%87%A8%F0%9F%87%B3_CN_%E4%B8%AD%E5%9B%BD-%3E%F0%9F%87%AB%F0%9F%87%B7_FR_%E6%B3%95%E5%9B%BD
ss://YWVzLTI1Ni1jZmI6VVRKQTU3eXBrMlhLUXBubUAyMTcuMzAuMTAuMTg6OTAzMw==#%F0%9F%87%B7%F0%9F%87%BA_RU_%E4%BF%84%E7%BD%97%E6%96%AF
vmess://eyJhZGQiOiIxODUuMTQ4LjEwNy4xMSIsImFpZCI6MCwiaG9zdCI6ImlwMTguNjkyOTE5OC54eXoiLCJpZCI6IjVmM2YwOWFkLTg5Y2ItNGU5NC1hN2FkLWFhODIzOTkxMzU1NSIsIm5ldCI6IndzIiwicGF0aCI6Ii9naXRodWIuY29tL0FsdmluOTk5OSIsInBvcnQiOjIwODIsInBzIjoi8J+HsfCfh7lfTFRf56uL6Zm25a6bLT7wn4eo8J+Hpl9DQV/liqDmi7/lpKciLCJ0bHMiOiIiLCJ0eXBlIjoiYXV0byIsInNlY3VyaXR5IjoiYXV0byIsInNraXAtY2VydC12ZXJpZnkiOnRydWUsInNuaSI6IiJ9
vless://03633612-cb32-46cc-8f93-7103d1511ade@151.101.2.216:80?security=none&type=ws&host=Mahxraytdep.ir&path=%2F%3Fed%3D80#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD
vmess://eyJ2IjoiMiIsInBzIjoi8J+HuvCfh7hfVVNf576O5Zu9LT7wn4eo8J+Hpl9DQV/liqDmi7/lpKciLCJhZGQiOiIxOTAuOTMuMjQ1Ljc2IiwicG9ydCI6IjIwODIiLCJ0eXBlIjoibm9uZSIsImlkIjoiNWYzZjA5YWQtODljYi00ZTk0LWE3YWQtYWE4MjM5OTEzNTU1IiwiYWlkIjoiMCIsIm5ldCI6IndzIiwicGF0aCI6Ii9naXRodWIuY29tL0FsdmluOTk5OSIsImhvc3QiOiJpcDE4LjY5MjkxOTgueHl6IiwidGxzIjoiIn0=
vless://3983dfa7-c19e-4ef9-a635-122cd78a802e@45.81.35.6:33156?security=none&type=tcp#%F0%9F%87%AB%F0%9F%87%B7_FR_%E6%B3%95%E5%9B%BD
vless://520061ab-e8e3-4325-9272-8e3583094964@104.18.22.19:8080?security=none&type=ws&host=Operatormci.xn--nevergiveupyeoqkfsggy.bookmarkingonline.info.&path=%2F#%F0%9F%87%BA%F0%9F%87%B8_US_%E7%BE%8E%E5%9B%BD-%3E%F0%9F%87%A9%F0%9F%87%AA_DE_%E5%BE%B7%E5%9B%BD

备份并恢复wordpress

确保备份数据可恢复

当备份完成后,确保目标机器上的备份数据能够成功恢复,备份的数据库和文件都能够在目标系统上重新安装并运行 WordPress。

1. 恢复文件

在目标机器上,你可以使用 rsync 将备份的 WordPress 文件恢复到适当的目录(例如 /var/www/html/wordpress/):

bash复制代码rsync -avz /backup/wordpress/ /var/www/html/wordpress/

2. 恢复数据库

在目标机器上,你可以使用 mysqlmariadb 将备份的数据库恢复:

bash复制代码mysql -u wp_user -p'wp_password' wordpress_db < /backup/wordpress_db/wordpress_db.sql

确保在目标机器上,数据库的连接配置(wp-config.php 文件中的数据库设置)与源机器相同,确保 WordPress 可以成功连接到恢复的数据库。

修改MagicMirror2的 compliments 模块的中文字体风格

/* 修改 compliments 模块的中文字体风格 */
.compliments {
  font-size: 30px; /* 可以根据需要调整这个值 */
  color: #00ff00; /* 设置字体颜色为绿色 */
  font-family: "PingFang Light", "PingFang SC", sans-serif; /* 设置中文字体风格为 PingFang Light */
}