惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Schneier on Security
P
Proofpoint News Feed
Apple Machine Learning Research
Apple Machine Learning Research
WordPress大学
WordPress大学
博客园 - Franky
V
V2EX
爱范儿
爱范儿
J
Java Code Geeks
小众软件
小众软件
Last Week in AI
Last Week in AI
The Cloudflare Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Hugging Face - Blog
Hugging Face - Blog
T
The Blog of Author Tim Ferriss
酷 壳 – CoolShell
酷 壳 – CoolShell
The Register - Security
The Register - Security
GbyAI
GbyAI
Vercel News
Vercel News
Y
Y Combinator Blog
腾讯CDC
F
Fortinet All Blogs
I
InfoQ
N
Netflix TechBlog - Medium
B
Blog RSS Feed
D
Docker
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
量子位
博客园 - 司徒正美
阮一峰的网络日志
阮一峰的网络日志
The GitHub Blog
The GitHub Blog
Microsoft Security Blog
Microsoft Security Blog
V
Visual Studio Blog
博客园 - 三生石上(FineUI控件)
宝玉的分享
宝玉的分享
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
云风的 BLOG
云风的 BLOG
A
About on SuperTechFans
Scott Helme
Scott Helme
T
Tor Project blog
U
Unit 42
Google Online Security Blog
Google Online Security Blog
PCI Perspectives
PCI Perspectives
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
NISL@THU
NISL@THU
D
Darknet – Hacking Tools, Hacker News & Cyber Security
aimingoo的专栏
aimingoo的专栏
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Stack Overflow Blog
Stack Overflow Blog
Security Archives - TechRepublic
Security Archives - TechRepublic

Menghuan1918's Blog

提升浏览器多标签页管理效率 介绍页 友链 My Arch Linux - 外观与字体 使用ray.tune进行自动调整超参数 使用Docker(MinIO)和Caddy创建图床服务 AI系统攻击手段(简要概述) RAG预处理增强:让Fastgpt/Dify召回更多东西 将PDF知识图谱化:graphrag+Doc2X+DeepSeek 如虎添翼:为gpt_academic配置searxng搜索 包管理工具UV使用指南:全面替代conda 折腾杂谈:运用Dify+xinference+ollama构建知识库 Ollama跨平台性能比拼:Windows遥遥落后 折腾杂谈:部署一个网页在线状态面板/反代切换到Caddy 笔记软件的最终选择:Obsidian + Self-hosted LiveSync 配置DOSBox以及其窗口大小 在VSCode中配置多平台的C/C++语言支持 折腾杂谈:部署Alist并整合/服务器优化 在Linux上交叉编译出Windows可执行程序 利用MSYS2在windows上配置C/C++/openGL开发环境 强制对游戏应用FSR 折腾杂谈:Docker部署Rustdesk/切换网站框架 Speedometer 3.0分数测试(电子斗蛐蛐) 在Arch Linux下编译32位C程序出错
使用pelican以及nginx建立个人博客
Menghuan1918 · 2024-02-29 · via Menghuan1918's Blog

环境

在本地pelican生成静态网页使用的环境是Arch Linux,python的版本为3.11.4(在miniconda创建的虚拟环境中)。

云端是阿里云香港的轻量应用服务器,Ubuntu 22.04,由于是静态网页云端直接使用nginx部署了。

Pelican生成静态网页

首先创建一个新的conda虚拟环境(这里偷懒直接用的base环境, 反正平时也不用 ),再安装相应的包:

python -m pip install "pelican[markdown]"

随后使用pelican-quickstart生成一个配置文件。

默认的主题有点丑 ,在这儿我选择使用Flex主题进行美化了。

使用pelican content -s pelicanconf.py -t Flex生成静态网页,生成完后你就可以使用pelican --listen在本地预览结果了。没有问题的话就可以将生成的文件传到云端去了。

注意,如果你使用火狐(Firefox)进行预览,你可能需要输入http://localhost:8000进行预览,否则某些图标不能正常加载。

配置Nginx

首先创建一个新的配置文件(当然你得先安装好了对吧):

toucch /etc/nginx/sites-available/menghuan.conf

并将其链接到sites-enabled目录之下(假设你已经删除了sites-enabled下的默认文件):

ln -s /etc/nginx/sites-available/menghuan.conf /etc/nginx/sites-enabled/

在配置好之后使用nginx -t检查语法错误后使用systemctl重载nginx即可。在这儿我设置的配置文件为:

server {
    listen 443 ssl;
    server_name blog.menghuan1918.com;

    ssl_certificate /etc/ssl/menghuan1918.pem;
    ssl_certificate_key /etc/ssl/menghuan1918.key;

    root /var/www/menghuan;

    error_page 404 /404.html;

    location / {
        index index.html;
    }
}

这里使用的证书是从Cloudflare白嫖的,这里还踩了个坑,我使用的是apt安装nginx,其默认用户为“www-data”,没注意证书不能被其读取,改了权限就好了。

其他

写个Bash脚本方便更新

#!/bin/bash
source /home/menghuan/miniconda3/etc/profile.d/conda.sh
conda activate base
cd /home/menghuan/Documents/Web
pelican content -s pelicanconf.py -t Flex
rsync -avz --delete ./output/ root@Ali_hk:/var/www/menghuan/
echo "Done!"

默认情况下conda指令不能直接在bash脚本中执行,需要先导入。

处理删除线无法显示的问题

在配置文件pelicanconf.py中重新配置了Markdown扩展

MARKDOWN = {
    'extension_configs': {
        'markdown.extensions.codehilite': {'css_class': 'highlight'},
        'markdown.extensions.extra': {},
        'markdown.extensions.meta': {},
        'pymdownx.tilde': {},
    },
    'output_format': 'html5',
}

杂谈

第一篇文章不出意外地是记录怎么建立这个站点的文档🤣

不过怎么说也在2.29号这个四年一遇的日子(虽然并不准确!)配置好了发出来了´͈ ᵕ `͈