LinMinquan's Blog

Experience technology to change life

腾讯企业邮箱 SPF DKIM DMARC 设置

腾讯企业邮箱,官方的文档里没有 DKIM 的设置,只有 SPF, DMARC 的设置。那怎样设置 DKIM 呢?找那个你采购时的代理商。过个一天对方就会给你。 DKIM 是一个签名,一长串的字符。 有两个网站可以用来测试邮件的这些设置,并给出打分。 mail-tester.com mailgenius.com 也可以发一件邮件给 gmail,通过 Show Original 来查看一些设置是 PASS 还是 FAIL。 DMARC 里有一个选项,可以用来决定当验证失败后,该把它移到垃圾箱,还是拒收。 Zoho 的邮箱的文档就写得比较清楚。 Freshdesk 代发邮件的话,也得照它的系统和文档进行相应的设置。 20220716 补充 The World’s Most Abused TLDs Read more →

javascript .map 文件的作用

在用一些 js 库时,有见到 .map 的文件,搜了下它的作用 Basically it’s a way to map a combined/minified file back to an unbuilt state. 参考文章: Introduction to JavaScript Source Maps Read more →

How to Setup DKIM Record for a Subdomain

设置邮件对域名进行设置时,大部分的教程只是针对主域名。如果是用子域名呢,例如 mail.example.com。其实只要在其给出的针对主域名的设置的 host 的最后加上子域名就行了。 For DKIM - Record type : TXT Host : mailer._domainkey Value : "v=DKIM1; k=rsa; p=LONGSTRING" [SOLVED] You need to setup hostname like this SPF hostname : mail DKIM hostname : mailer._domainkey.mail 参考链接: Setting up SPF and DKIM records of a subdomain Read more →

在 Ubuntu 20.04 里配置 golang 环境

在一台全新安装的 Ubuntu 20.04 服务器版里,安装 golang 环境。 设置时区 sudo dpkg-reconfigure tzdata 安装 gcc 等工具, sudo apt update sudo apt install build-essential Golang install. 其实不用弄 go workspace 之类的东西。 https://go.dev/doc/install vi ~/.bashrc 将 go 的安装目录加入环境变量 export PATH=$PATH:/usr/local/go/bin 使其马上生效 source ~/.bashrc 将本地的证书的公钥添加到 ~/.ssh/authorized_keys 参考链接: How to Install GCC (build-essential) on Ubuntu 20.04 https://go.dev/doc/install How To Install Go and Set Up a Local Programming Environment on Ubuntu 18.04 Read more →

Flutter Dio https certificate verificate

环境:Flutter 1.17.4, Dio 3.0.9 需要去接入某服务商的API,给的接口是 ip 地址,而不是域名,对方给了个文件(root certificate file) trusted-ca-certs.pem 用来验证 https 连接。看来他们是用的自签名的证书。 根据 参考链接1 去尝试会报错,OS Error: No such file or directory, errno = 2 原因是我忘记把 trusted-ca-certs.pem 写在 pubspec.yaml 里。 最终的代码如下: Dio dio = new Dio(); ByteData bytes = await rootBundle.load('assets/trusted-ca-certs.pem'); (dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate = (client) { SecurityContext sc = new SecurityContext(); sc.setTrustedCertificatesBytes(bytes.buffer.asUint8List()); HttpClient httpClient = new HttpClient(context: sc); return httpClient; }; 参考链接: Dio https certificate verification Add Certificate in Flutter Read more →

欧盟版的 Windows 10 N 怎样录屏?

Windows 10 有个欧盟版,叫 Windows N,它没有带 Windows 录屏功能。解决办法见参考链接。但有同事表示,即便装了也还是不行。-_- 参考链接: Troubleshoot Xbox Game Bar on Windows 10 Read more →

Flutter Xcode 报错:Module ‘flutter_blue’ not found

Flutter 项目打包成 Xcode 后,会报 Module ‘flutter_blue’ not found 解决办法是:双击 Runner.xcworkspace 来打开 Xcode 而不是双击 Runner.xcodeproj 那么接下来就会问,.xcodeproj 和 .xcworkspace 有什么区别? A workspace is a collection of projects. It’s useful to organize your projects when there’s correlation between them (e.g.: Project A includes a library, that is provided as a project itself as project B. When you build the workspace project B is compiled and linked in project A). It’s common to use a workspace in the popular CocoaPods. Read more →

怎样清理 discourse 服务器的空间

环境:Ubuntu 18.04 Discourse 是用 Docker 部署的,会有些 image 和 container 没有在使用,但占用着空间,这时可以把它们清掉 cd /var/discourse ./launcher cleanup 下图是跑 ./launcher cleanup 时的提示, it will purge all images not in use. 删除完后就只剩下一个 image 和一个 container 了,那个 image 跟那个 container 是关联的 参考链接: Stuck in a loop of freeing up space and filling it up again when rebuilding Read more →