Python 虚拟环境(Virtual Environment)使用方法
最近捣鼓安装各种工具的时候,python的库之间的版本冲突,导致一些工具无法正常使用,所以研究了一下Python 虚拟环境的使用方法,喊AI写了一个帮助文档,放在这里给自己备忘。
在现代 Python 开发中,虚拟环境(Virtual Environment,简称 env)是不可或缺的工具。它能帮助开发者有效地管理项目依赖,避免冲突,并确保项目的可移植性。本篇文章将详细介绍 Python 虚拟环境的用途、创建与使用方法、导出与退出方式,以及一些常见注意事项。
1. 虚拟环境的用途
1.1 什么是虚拟环境?
虚拟环境是一个隔离的 Python 运行环境,它允...
比屏蔽网段更好的屏蔽方法——屏蔽 ASN
最近服务器仍然被很多不知名的 IP 地址发起大量的访问,这些访问应该是使用各种脚本以及僵尸爬虫等方式进行的攻击。虽然这些爬虫来自不同的 IP,甚至网段也不尽相同,但研究发现它们通常来自同一个地域或者 ISP。这让我开始关注一个之前没怎么注意过的概念:ASN。
什么是 ASN?
ASN(Autonomous System Number)是自治系统编号,它是用于互联网路由的一个重要标识符。每个 ASN 代表着一个自治系统(AS),通常属于同一个网络运营商、数据中心或大型组织。
举个例子:
AS45102 属于阿里云
AS13335 属于 Cloudflare
AS1...
什么是 ASN?
ASN(Autonomous System Number)是自治系统编号,它是用于互联网路由的一个重要标识符。每个 ASN 代表着一个自治系统(AS),通常属于同一个网络运营商、数据中心或大型组织。
举个例子:
AS45102 属于阿里云
AS13335 属于 Cloudflare
AS1...
Nginx 屏蔽恶意域名解析
最近服务器遭遇恶意域名解析攻击,有人将未经授权的域名解析到我的服务器 IP 上,导致服务器流量异常暴增。百思不得其解为什么会有人这么做,估计是为了绕开 CDN 和 WAF,直接连服务器的 IP,不知道什么原因服务器的 IP 地址被暴露了,也可能是扫描到了。
似乎也没有好的方法在云服务商的 Dashboard 中设置禁止别的域名解析到我的服务器上,因为别人要将域名解析到你的 IP 上,也无法阻止。所以只有考虑在 nginx 的配置上做一下文章。
配置详解
将以下配置保存为 /etc/nginx/conf.d/unauthorized-domains.conf:
会写作的人与不会写作的人
这是硅谷著名投资人、YC创始人Paul Graham 2024年10月最新发表的文章《会写作的人与不会写作的人》。
Graham探讨了AI时代写作能力的未来。他认为,随着AI写作工具的普及,人类社会可能会逐渐分化为”会写作”和”不会写作”两类人群。
这不仅关乎写作本身,更涉及人类的思考能力。因为正如他在文章中指出的:”写作就是思考”。
考虑到这个话题的重要性和时效性,我将这篇文章翻译成中文放在自己的博客中备忘。
原文链接:https://www.paulgr...
如何在 Crontab 中使用变量
在使用Linux的定时任务管理工具crontab时,合理使用变量可以让我们的任务配置更加灵活和易于维护。
1. 环境变量设置
在crontab中,我们可以直接定义常用的环境变量:
# 设置基本环境变量
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=your@email.com
HOME=/home/username
# 使用定义的变量
0 * * * * $HOME/scripts/backup...
1. 环境变量设置
在crontab中,我们可以直接定义常用的环境变量:
# 设置基本环境变量
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=your@email.com
HOME=/home/username
# 使用定义的变量
0 * * * * $HOME/scripts/backup...
iOS Admob SDK 报错 Failed to look up symbolic reference at ...
项目相关
今天在处理 iOS 项目时,对 cocoapods 进行了更新。之后编译运行项目,结果在 Google Admob SDK 中遇到了错误提示:
Failed to look up symbolic reference at 0x104fcde57 in xxxxxx
问题排查过程
花费了大量时间去排查问题,最终发现是因为 Google-Mobile-Ads-SDK 库更新到了最新版本(11.10.1)后,与 iOS 18 以及 Mac OS 新系统存在兼容性问题。
解决办法
解决方式比较简单,将其更换为低版本的 SDK,选择了 11.1.0 版本。在...
今天在处理 iOS 项目时,对 cocoapods 进行了更新。之后编译运行项目,结果在 Google Admob SDK 中遇到了错误提示:
Failed to look up symbolic reference at 0x104fcde57 in xxxxxx
问题排查过程
花费了大量时间去排查问题,最终发现是因为 Google-Mobile-Ads-SDK 库更新到了最新版本(11.10.1)后,与 iOS 18 以及 Mac OS 新系统存在兼容性问题。
解决办法
解决方式比较简单,将其更换为低版本的 SDK,选择了 11.1.0 版本。在...
我的 2024 购物与阅读清单
2024年是个忙碌的一年,工作和生活都在高速运转中,期间还抽空去了趟日本。虽然今年购物不算多,但还是要记录一下每年挑选到的心头好,给未来的留个备忘。
#购物
动态血糖仪
看了《控糖革命》以后,对自己的血糖数据产生了极大的兴趣。买的是三诺的动态血糖仪,不用扎针,直接贴在皮肤上就行。在app上可以直观看到实时的血糖数据,感觉挺酷的。不过有使用时效,15天后会自动失效。
测试的那段时间,早中晚的时候我都会关注血糖数据,而且看到不同的食物对血糖影响的实时曲线,很有 life hacker 的感觉。有一次吃垃圾食品的时候,它还还弹出了血糖过高的警告……
...
#购物
动态血糖仪
看了《控糖革命》以后,对自己的血糖数据产生了极大的兴趣。买的是三诺的动态血糖仪,不用扎针,直接贴在皮肤上就行。在app上可以直观看到实时的血糖数据,感觉挺酷的。不过有使用时效,15天后会自动失效。
测试的那段时间,早中晚的时候我都会关注血糖数据,而且看到不同的食物对血糖影响的实时曲线,很有 life hacker 的感觉。有一次吃垃圾食品的时候,它还还弹出了血糖过高的警告……
...
Bitwarden an error has occurred 错误的解决
Bitwarden 是一款优秀的密码管理工具,支持多设备使用,能帮助用户安全存储各类账号密码。其自建服务器方案可让用户自己掌控数据,增强隐私安全性。
我长期使用 Bitwarden 管理密码,通过自建服务器的方式来保管所有账号密码,它能在各种设备上使用,非常方便。
遇到的问题
前几日在 iOS 上升级 bitwarden 新版本时,出现了“an error has occurred”的提示无法进入。经查询发现很多人都有此问题,根源在于自建的 self-hosted 服务器版本过低,无法适配新客户端。
解决办法
我使用的是 docker 的 vaultward...
共计 80 篇文章,10 页。