使用Python Openssl库解析X509证书信息

X.509 证书结构描述

常见的X.509证书格式包括:

后缀 作用
cer/crt 用于存放证书,它是2进制形式存放的,不含私钥
pem 以Ascii来表示,可以用于存放证书或私钥。
pfx/p12 用于存放个人证书/私钥,他通常包含保护密码,2进制方式。
p10 证书请求
p7r CA对证书请求的回复,只用于导入
p7b 以树状展示证书链(certificate chain),同时也支持单个证书,不含私钥。

对于常见的https证书 一般是用crt或者pem来保存, http证书可点击网页前的锁按钮得到, 并且进行导出

继续阅读使用Python Openssl库解析X509证书信息

WordPress修改数据库返回数据

有个简单需求,就是 WordPress 多个网站同步数据的情况下,根据网站域名的不同,修改数据库返回的数据。

实现这个的需求就是在当前 WordPress 主题下的 functions.php 中实现 the_post 拦截函数,在数据库返回的数之后,进行替换。

例子如下:

这个替换过程只能针对没有使用 WP Super Cache 进行缓存的情况,如果已经使用 WP Super Cache 进行缓存,那么很可能导致没有及时生效。

如果只是需要替换域名,那么只需要在 wp-config.php 中定义 WP_HOME/WP_SITEURL 两个变量即可实现域名覆盖。

示例参考代码如下:

参考链接


Android Studio 3.6.2编译报错“GC overhead limit exceeded”

Android Studio 3.6.2 编译报错 “GC overhead limit exceeded”,详细的报错信息如下:

这个问题是由于编译过程中的Java的内存开销太大超过了默认限制导致的,解决方法就是增大Java的内存限制。

具体操作为在项目的 gradle.properties 中修改内存限制 org.gradle.jvmargs 默认情况下,这个限制在 1536m 我们需要拉大到 4096m

修改后的内容如下:

如果这个文件不存在,则在工程文件 build.gradle ,gradlew , local.properties 等相同的目录下新建 gradle.properties 这个文件即可。

参考链接


macOS Catalina(10.15.4)/IntelliJ IDEA 2018.3/Tomcat 9.0.33/Maven项目调试报错"Caused by: java.util.zip.ZipException: zip file is empty"

macOS Catalina(10.15.4)/IntelliJ IDEA 2018.3/Tomcat 9.0.33/Maven项目调试时报错,这个项目以前是可以正常调试的,一段时间之后,就不能正常调试之下了

继续阅读macOS Catalina(10.15.4)/IntelliJ IDEA 2018.3/Tomcat 9.0.33/Maven项目调试报错"Caused by: java.util.zip.ZipException: zip file is empty"

ubuntu 18.04系统/var/log/auth.log文件不存在

通过 /var/log/auth.log 文件可以查看一些关于 ssh 登陆、sudo 命令的信息。尤其是 denyhosts 依赖这个日志拦截非法的登陆攻击。 但是,我最近遇到了一个问题,在阿里云的一些主机上没有这个文件,或者日志文件在自动备份(比如被重命名成 /var/log/auth.log.1 )之后,没有重新生成新的 /var/log/auth.log

检查 /var/log 目录的所有者信息,如下:

这里的所有者权限信息是不正确的,缺少所有者所在组的文件创建权限,导致文件创建出现问题。因此需要如下命令:

接着手工创建日志文件,如下:

参考链接


/var/log/auth.log文件不存在

ubuntu 18.04编译OpenSCAD源代码

ubuntu 18.04编译OpenSCAD源代码,本意想研究一下如何加速 CGAL 的计算过程,目前还没完成。
 
编译过程如下:

继续阅读ubuntu 18.04编译OpenSCAD源代码