归档:2023 年


启用 Web 应用防火墙(WAF)

Web Application Firewall (WAF),即 Web 应用防火墙,通过监控和过滤客户端和 Web 应用之间的 HTTP 流量来保护 Web 应用,使其免受跨站伪造、跨站脚本(XSS)、SQL 注入等攻击的影响。

iOS LLVM 混淆插件:Hikari 和 Hanabi

近期我将项目中使用的 Xcode LLVM 混淆方案由 obfuscator-llvm 更换为开源的 Hanabi Hikari 插件,在 Xcode 15 上适配 Clang,编译 Objective-C 项目混淆效果达到预期,但对 Swift 项目支持的还有问题。

在拼多多“百亿补贴”购买 iPhone

如果时间再往前几年,我是断定不会在拼多多上购买电子产品的。但是,事情总是在发生变化的。我终于也没能经受住低价的诱惑,在“百亿补贴”中购买了一款 iPhone。

cocoapods-packager 插件的错误修复和适配

在前篇文章 pod package的不足和改进 中对 cocoapods-packager 插件如何自定义参数做过介绍,那已经是 2020 年的事了,cocoapods-packager 目前依旧停留在 2016 年的 1.5.0 版本,已渐失于维护。我在适配 Xcode 15 时,遇到一些问题,这里做下记录。

Swift并发编程 - 理解结构化和结构化并发的底层技术

前篇文章 Swift并发编程 - 理解 async 和 await 介绍了 Swift 并发编程的两个关键字 async 和 await。本文原本打算继续写 Task、Actor 等内容,但发现需要补充的基础知识很多。

尝试个人App ICP备案初审即失败

我尝试在阿里云上提交个人 App 的备案请求,没想到初审就遇到莫名其妙的“备案行为存在异常”错误,并被告知“暂无法受理您的个人备案申请”。

我卖掉了持有 7 年的域名

网站更换域名后,我抱着试一试的态度将旧域名放到线上售卖,没想到很快就成交了。我因此失去了那个持有 7 年的域名。这个操作有点大意,我起初并不认为有人会购买那个并不算亮眼的域名。

要不要给宝宝打自费的“二类疫苗”?

如果你也是新手爸妈,也正在纠结要不要给孩子接种略显昂贵的二类自费疫苗,那么请看完这篇文章。文中搜集对比了我国、美国以及日本三个国家的儿童免疫规划疫苗的现状,相信看完之后你能有自己的判断。

由 xpc_connection_send_message_with_reply_sync 超时引发的崩溃

iOS 的一些系统接口需要调用 xpc_connection_send_message_with_reply_sync 方法与其它进程通信并返回结果,在低性能设备上打开 App 后如果有频繁的 xpc_reply_sync 调用可能会诱发超时卡死。

大眼睛姑娘和屎尿屁专家

女儿出生还不到两个月,已经初具高颜值的潜质,这个偶尔吵闹的“小棉袄”将带给我们多少幸福和快乐呀。

防止 CDN 因 DDOS 攻击等产生高额账单

在使用按量付费的服务时,一定要做好风险管控。像 CDN 这类服务,攻击者的攻击门槛极低且几乎不需要什么成本,却可以大量消耗网站 CDN 流量。

Nginx 使用 http_image_filter_module 实现图片缩放旋转

本文介绍了在 Nginx 中使用 ngx_http_image_filter_module 模块来处理简单的图片转换,可以轻松实现图片缩放、旋转等操作。

刀郎《罗刹海市》 - 唱的淋漓听的得劲

刀郎最近出了新专辑《山歌寥哉》,里面有一首歌曲《罗刹海市》引发的人们的广泛讨论。人们将自己带入,都能在自己的行业找到映射,哪个是马户驴,哪个是那又鸡,皆能对号入坐。

Nginx 目录服务和反向代理的 web 鉴权认证

本文提供两种便捷的 web 鉴权认证方法,适用于安全性要求不高小型系统。包括 HTTP Auth Basic 和 Nginx Cookie 判断。

北京大学某医院生产记录

这篇文章更多的是个人回忆及遇到的问题记录,不是攻略之类的分享。如果可能对读者还有些建议的话,可以直接看最后一部分。

学习《3岁以下婴幼儿健康养育照护指南》

本文是关于这份文件的学习笔记,主要摘录了文件中「婴幼儿健康养育照护咨询指导内容」部分的内容,并对原文做了修改和补充说明。

亲爱的宝贝,我们终于见面了

今天,2023年7月8日,农历五月二十一,对于我们这个小家庭来说,是具有特殊含义的,是值得纪念的大好日子。

腾讯云 CDN 的 X-Cache-Lookup

本文讲解了我在使用 腾讯云 CDN 的一些问题和疑惑的地方,文章最后给出了两个问题:Hit From Inner Cluster 的准确含义 和 如何减少动态内容出现 X-Cache-Lookup 的次数。

盛夏荷塘 卧剥莲蓬

张爱玲说人生有三大憾事:“鲫鱼多刺、海棠无香、红楼未完”,我要再加上一句:“莲子不可隔夜”。

Swift并发编程 - 理解 async 和 await

本文是我学习 Swift 并发编程的第一篇笔记,文章从几个不太好理解的点,介绍了async 和 await 语法关键字的使用方法和内在含义。

销毁 Linux 线程的正确方式

在 Linux 系统中,线程是轻量级的执行单元,正确销毁线程可避免内存泄漏等问题。Linux 线程的有 joinable 和 detached 两种属性。

更换域名后各搜索引擎的响应

这篇文章的内容不具备普遍性,只是作为一个参考。当网站更新域名后,需要做很多必要的处理,以确保流量稳定过度。

本站启用全新域名

从昨天开始,本站启用全新的域名:kanchuan.com,和名字契合,更正式一些。

判断浏览器User-Agent是否伪造的常规方法

User-Agent使用一串特定的字符串来标识网络客户端信息,User-Agent常被网站用于平台判断、爬虫检测等。本文介绍一些判断User-Agent是否伪造的常规方法。

使用mkcert生成自签名证书

本地HTTP环境无法测试一些浏览器的特性,本文介绍一种便捷的方案在本地部署自签名HTTPS环境。

浏览器的 Secure Context 安全上下文限制

主流浏览器都启用了Secure Context,它禁止浏览器访问被认为是不安全的内容,防止不合法访问造成的信息泄漏和安全问题。

计算机系统中的时间戳

这是一篇简单的笔记,整理下目前已知的不同计算机系统的时间戳计数标准。

Validating App Store Receipts

Apple 的 Receipts 文件,包括App Attest receipt、App Store receipt等,都是采用PKCS #7容器格式包装的,包含签名、证书链、及使用ASN.1编码的payload。本文从原理和细节上讲解了使用 python 如何解码Receipts文件,如何验证签名、校验证书链、并提取payload。

iOS Flutter MethodChannel 双向通信

MethodChannel 是 Flutter提供的最常用的和 Native App 双向通信的方式。本文将演示这种通信方式的使用。

iOS Flutter 开发环境部署

按计划应该是继续SwiftUI相关的,临时需求用到了Flutter,接下来的几篇可能都是和Flutter相关(只是可能)。本文记录iOS Flutter 开发环境部署步骤。
  • 1
  • 2