分类 技术分享 下的文章

转载自Sajuna

? OpenList Moe

为OpenList全局注入半透明模糊效果,支持日夜切换,覆盖文件列表/预览/后台等全组件

一个适用于文件列表程序 OpenList 的美化

✨ 特性

兼容日/夜间模式 - 不同背景与配色

全元素毛玻璃效果 - 半透明元素结合背景模糊

多层次透明度调校 - 完美的视觉层次

? 预览

首页

桌面端

移动端

要不去预览站点看看?跟我来,点击右侧文字前往 宸玚的资料库

? 使用

自定义头部

<!-- 修改 href 和 font-family 以自定义字体,删除字体 <link> 和字体 CSS 则使用 OpenList 默认字体 -->
<link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@600&display=swap" rel="stylesheet">
<link href="https://cdn.jsdmirror.com/gh/SajunaOo/OpenList-Moe@dist/css/OpenList-Moe.min.css" rel="stylesheet">
​
<style>
/** 修改 URL 以自定义背景,删除背景 CSS 则使用 OpenList Moe 默认背景 */
:root {
  --moe-color-theme: 248 179 78; /** 主题色(必填) */
  --moe-bg-image-desktop: url("https://cdn.jsdmirror.com/gh/SajunaOo/OpenList-Moe-Image/light_desktop/早秋_2.webp"); /** 默认白天模式桌面端背景图 */
  --moe-bg-image-mobile: url("https://cdn.jsdmirror.com/gh/SajunaOo/OpenList-Moe-Image/light_mobile/沉浸感_3.webp"); /** 默认白天模式移动端背景图 */
}
​
.hope-ui-dark {
  --moe-bg-image-desktop: url("https://cdn.jsdmirror.com/gh/SajunaOo/OpenList-Moe-Image/dark_desktop/新春快乐_5.webp"); /** 默认夜间模式桌面端背景图 */
  --moe-bg-image-mobile: url("https://cdn.jsdmirror.com/gh/SajunaOo/OpenList-Moe-Image/dark_mobile/沉浸感_6.webp"); /** 默认夜间模式移动端背景图 */
}
​
/**
 * 自定义字体
 * 
 * - 全局字体
 * - Markdown 区域字体
 * - Aplayer 音乐播放器字体
 * - ArtPlayer 视频播放器和 tooltip 提示字体
 */
body, .markdown-body, .aplayer, .art-video-player, [class*=hint--]:after {
  font-family: 'Noto Serif SC' !important;
}
</style>

不要忘了修改主题色哦

自定义内容

<script src="https://cdn.jsdmirror.com/gh/SajunaOo/OpenList-Moe@dist/js/OpenList-Moe.min.js"></script>
​
<!-- 如果你不需要添加备案号,请删除以下代码 -->
<div class="beian-container" style="text-align: center;" hidden>
  <a class="hope-anchor hope-c-PJLV-idrWMwW-css" href="https://beian.miit.gov.cn" target="_blank" rel="noopener" style="font-size: 14px;">
    豫 ICP 备 2025000000 号</a>
</div>
​
<script>
// 备案信息加载
(()=>{let _o;const _f=()=>{const e=document.querySelector('.footer'),t=document.querySelector('.beian-container');return e&&t&&(e.append(t),t.hidden=!1,_o?.disconnect(),_o=null,!0)};_f()||(_o=new MutationObserver(_f), _o.observe(document,{childList:1,subtree:1}))})();
</script>

? 自定义配置

查看源码变量

如果你需要深度定制特定元素的样式,可以参考 main.scss 中的 全局变量定义 部分。

:root {
  --moe-color-checkbox: #f8b34e; /* 白天模式复选框颜色 */
}
​
.hope-ui-dark {
  --moe-color-checkbox: #f8b34e; /* 夜间模式复选框颜色 */
}

❤️ 关于

如果你也喜欢这个项目,那不妨点个Star♪

仓库:OpenList Moe Github

ℹ️ 日志

v1.1.2 Release

Features


Bug Fixes


Other Changes

View changes on GitHub

前言

halo主题有一个豆瓣插件,提供个性化的书影音分享功能。不过好像由于豆瓣的策略,捕获的图片都无法显示。插件作者给出的文档虽给出自建代理,但实际上建完仍旧不好用。

解决办法

目前我采用的办法是:使用他人建好的代理

收集时间代理地址是否可用
2026.2.12https://douban.img.yyds.pink可用

最后

目前还在尝试解决办法,这种代理还是觉得自建的可靠些,用别人的一旦关停了就没了

前言

站长们估计或多或少都遇到过这个问题:明明在服务器里改好了Nginx的配置文件,但是刷新网站发现配置没生效。再比如:新加的域名访问不了、改的防盗链规则不生效…

我每次折腾程序的时候也会遇到这个问题,在宝塔面板配置好之后刷新页面,却发现配置没生效,反复检查没找到问题,忙叨半天最后才发现,原来是忘了让Nginx生效新配置。

为什么Nginx修改配置后不会实时生效?修改配置后,到底该用重启还是重新加载?这两个操作有什么区别?哪些修改必须重启,哪些只需要重载就够?

为了便于理解,以宝塔面板来举例,用这篇文章一次性解释完,以供后来者参考。

为什么Nginx修改配置后不会实时生效

这和Nginx的设计机制问题,这类服务软件的逻辑都是这样,为了保证服务稳定的设计,全部遵循一次读取,长期驻留的原则

Nginx在启动时会将配置文件解析并固化到内存中,后续的请求处理直接读取内存数据,以保证高性能,而不会每次都去读取磁盘上的文件。

所以,仅仅修改文件是不够的,必须通过命令通知主进程重新读取配置文件、验证语法、创建新的工作进程来加载新配置,从而实现平滑更新。

为什么要这么设计

包括我在内,很多站长会问:为什么不能设计成配置自动生效,这样多方便。答案也很简单:为了服务器的绝对稳定和高性能。分三点说明:

  1. 如果Nginx实时监听配置文件,每一次请求都要去读硬盘的配置文件,服务器的IO开销会暴增,网站访问速度变慢、性能大幅下降,这对高访问量的站点是致命的;
  2. 配置文件的修改可能不完整、有语法错误,如果实时生效,会直接导致Nginx运行出错、网站崩溃,风险极高!对新手来说更是如此;
  3. 一次性加载到内存,是所有高性能服务软件的标配,内存的读取速度非常快,能最大程度保证Nginx的运行效率。

重启(restart) / 重载(reload)

以宝塔为例,有两种方式让新配置生效。

方法一:重载配置(推荐)

宝塔面板上的重载配置按钮,对应到Linux命令行就是:nginx -s reload

这是日常修改配置的首选操作,也是最推荐的!它的作用是:通知正在运行的Nginx,去重读硬盘上的配置文件,把新的配置加载到内存中,平滑生效。

这个操作的核心优点:不中断服务、不影响用户访问。通过reload命令,进程会先验证新配置的正确性,仅在语法无误时启动新的工作进程来接管新请求,同时让旧的工作进程继续处理完现存连接后再优雅退出,从而在零停机的情况下完成配置更新,既保证了高可用性,又具备了出错回滚的安全机制。

方法二:重启Nginx服务

宝塔面板上的Nginx重启按钮,对应到Linux命令行就是:systemctl restart nginx

作用:先完全停止当前正在运行的所有Nginx进程,然后再重新启动Nginx,启动的同时加载新配置。

这个操作的核心特点:短暂中断服务。重启的瞬间,Nginx的所有进程都被关闭了,此时如果有用户访问网站,会出现访问失败、页面报错、加载超时的情况,直到Nginx重启完成。虽然重启的时间很短(一般毫秒级),但对有大量访问的站点来说,依然有影响,所以非必要不建议重启。

哪些修改,用重载就够?哪些修改,必须重启?

只需要重载 :仅修改业务规则类配置,比如:新增/修改 反向代理、新增/修改 防盗链、新增/修改 缓存策略、转发规则、后端服务地址gzip压缩、页面跳转/重定向。这些不涉及 Nginx 核心运行的进程、端口、模块。

必须重启 :修改核心运行相关配置, 比如:新增/删除 监听端口、新增/删除 核心模块、修改 工作进程数、进程绑定CPU、修改 用户权限、运行身份、修改 pid文件路径、日志文件的根路径。凡是涉及 Nginx 的进程、端口、加载的模块,这些配置都无法通过重载生效,只能重启。

前言

又到了废话的时候,前些年刚上高中的时候,想要建站,一开始买的星辰云的虚拟主机,后来换成了云服务器。第一次用云服务器,买到手才发现和虚拟主机完全不一样,他没有控制面板?

当时纯小白,问别人也没人理,后来第一个月的机器压根没用到,白白浪费了。再后来才知道了宝塔面板,宝塔也可以说是我的启蒙面板了

教程开始

首先你要拥有一台服务器,去哪里买无所谓,练手的话小厂便宜,大型业务的话大厂稳定。如果你愿意的话可以走我的推广链接,就当赞助我了。

点我购买

值得注意的是,新手不推荐买大陆地区的服务器,因为要备案,很麻烦

系统选择

购买服务器时会让选择操作系统,按照下述顺序选择,排名越靠前的,与宝塔面板兼容性越好

Debian12、Ubuntu22、Centos9、OpenCloud9、TencentOS Server4,AlibabaCloud 3、麒麟,统信,欧拉等Linux系统

这里使用Debian12举例

连接服务器

在控制台查看服务器的IP、用户名、密码、端口

记下这些信息后,使用SSH工具连接服务器,这里推荐使用堡塔多机管理

填写相关信息后保存并打开终端

安装宝塔

输入安装命令:

if [ -f /usr/bin/curl ];then curl -sSO https://download.bt.cn/install/install_latest.sh;else wget -O install_latest.sh https://download.bt.cn/install/install_latest.sh;fi;bash install_latest.sh ssl251210

执行后会出现确认提示,输入y并回车,接下来等着就行

安装成功

出现如下文字即为安装成功,将面板信息复制保存

安装必备组件

访问面板地址并登录,按照提示绑定账号

安装服务器必备组件,按需选择

如果你是学习使用,可以选择快速安装,如果是正式上线的运行环境,建议选择编译安装。

面板效果