鉴于众所周知的原因,一直想换个CA的证书,Let's Encrypt 是一个很好的选择,免费!支持ACME protocol(Automatic Certificate Management Environment,全自动服务器身份验证协议)、支持ECC证书、使用简便,非常推荐!我要去给它捐赠,贡献点绵力。
获取证书我没有使用官方的方法,而是使用了acme.sh ,比官方的脚本更加简便。另外还有一个类似的acme-tiny ,有兴趣也可以看看。
1、获取脚本
git clone https://github.com/Neilpang/acme.sh
2、申请证书:我采用的DNS验证,操作完成后需要按提示设置DNS对应TXT的记录;ec-256表示ECC证书
acme.sh --issue --dns -d xxx.net -d www.xxx.net --keylength ec-256
3、生成证书:DNS生效后,就可以获取证书了;--ecc表示ECC证书
acme.sh --renew -d xxx.net -d www.xxx.net --ecc
4、最后把生成的cert key和full chain certs配置到Nginx中即可。
5、自动化更新:写个脚本定期执行下即可
acme.sh --renew -d xxx.net -d www.xxx.net --ecc acme.sh --renew -d xxx.net -d www.xxx.net --force --ecc #未到期强制更新
观察几个月,如无问题,就准备全站HTTPS了。
参考文章:《Let's Encrypt,免费好用的 HTTPS 证书》 、《开始使用 ECC 证书 》
工作需要用到两个网络,一个是公网,一个是专网,日常很多资源都是通过公网访问,但是也有一些特定的资源需要使用专网,经常切换很不方便。
阅读全部
无为而为
2016-01-20
分类:技术备忘
阅读:4933
评论:0
一台Lenovo ThinkPad X250,加了块创见 Transcend MTS400 128G NGFF的SSD固态硬盘,安装Win7 64位专业版,开始一切都好,后来发现开机后,一段时间不使用,鼠标能动,但是点击任何图标都没有反应,Ctrl+Alt+Del任务管理器都出不来,死机了。。。SSD的固件已经升级到厂家的最新版,貌似兼容问题。
折腾了几天,最后发现在BIOS设置里面把Intel Rapid Storage Technology / RST关闭后一切平静了!!! 有些情况可能还需要看看是否安装了相关的软件,在程序管理里面查找“快速存储技术”、“Rapid Storage Technology”或“RST”删除!
无为而为
2014-12-26
分类:技术备忘
阅读:2720
评论:0
自己用的ThinkPad X230安装了SSD之后,启动速度很快,但是某天开始输入登录密码后进入到桌面的速度变慢了,有一个明显的停滞时间,无硬盘活动,最少10秒,有时甚至更长。一直以为是安装了某个软件造成的,还使出了Process Monitor的Boot Logging,找过几次也没有头绪。
好吧,灵光总在一瞬间,前几天突然想起,在Win7右下角的“搜索程序和文件 ”框里查找“rapid”,联想RapidBoot Shield出现在我的视野,打开,在界面上关闭了“启用 RapidBoot Shield ”,一切恢复~!
无为而为
2014-07-22
分类:技术备忘
阅读:9448
评论:1
X230笔记本加了块Plextor PX-128M6M SSD固态硬盘,虽然X230的msata只能发挥SATA2 3G的威力,但是实际用起来还是感觉提升非常大,Plextor的4K性能还是挺不错的,超过正在用的三星840。原来重启动到进入桌面可以随意操作基本需要3-4分钟,现在30秒! 可是WIN7的体验指数WEI测试中,硬盘依然是最低分,永远是5.9分。常见的优化都已经做过了,开启AHCI、4K对齐、关闭索引和预读取、开启TRIM等等都做过了,可是分数就是定定的5.9!? 中文网站搜了半天没解决,最后在国外发现个帖子http://franktovar.de/2011/09/26/about-the-windows-experience-index-score/ ,说的是因为WEI的WinSAT工具在硬盘测试中必须要分配一定的连续磁盘空间才能完成,一查C:\Windows\Performance\WinSAT\DataStore下面的Disk.Assessment的xml日志,其中果然有“<Responsiveness Reason="UnableToAssess" Kind="Cap">TRUE</Responsiveness>”的记录,解决方法是进行磁盘碎片整理,老外推荐用UltraDefrag整理。 照着做,然后执行“winsat disk -scen 2009 -drive C:”,发现依然出错。。。后来认真看了C:\Windows\Performance\WinSAT\winsat.log,发现现在的错误是“storage\diskprof.cpp:2324: Unable to open temporary file. Largest available contiguous space was: 4096MB”,磁盘空间是够了,但是打不开临时文件?! 突然想到我用了RAMDisk,虚拟了2GB的内存作为临时磁盘,把系统的TEMP目录都junction到里面去了,曾经就发现过360云盘的同步版在这种情况下安装后,文件管理器里面“计算机\360云盘同步版”上面的管理条就是出不来,因为程序也是使用TEMP目录资源出错,导致安装不完整造成。 于是C盘建个TEMP2目录,修改环境变量,重启,测试成功,硬盘指数到7.8!
无为而为
2014-04-23
分类:技术备忘
阅读:3474
评论:0
故障现象: Win7下启动Thinkpad电源管理器后,停留在启动界面,不显示程序界面。补充:其实不光电源管理器,其他的FingerPrint指纹管理器、Access Connection等都可能会出现,打开任务管理器发现CPU中一个核占用率全满 解决方法: 1、控制面板-管理工具-服务,找到显示名称为“Windows Presentation Foundation Font Cache 3.0.0.0”的服务,将其停止。 2、删除文件,“C:\Windows\ServiceProfiles\LocalService\AppData\Local\FontCache3.0.0.0.dat” 3、启动“Windows Presentation Foundation Font Cache 3.0.0.0”服务。重新启动Thinkpad电源管理器, 微软对“Windows Presentation Foundation Font Cache 3.0.0.0”描述如下:通过缓存常用的字体数据来优化 Windows Presentation Foundation (WPF) 应用程序的性能。WPF 应用程序将启动此服务(如果尚未启动)。可以禁用此服务,尽管这样做会降低 WPF 应用程序的性能。 原文地址:http://thinkbbs.lenovo.com.cn/forum.php?mod=viewthread&tid=50057
无为而为
2013-11-10
分类:技术备忘
阅读:6299
评论:1
最近讨论到一个问题: A、B两个文本文件里面都有手机号,A文件是千万甚至上亿行,B文件是上百万行,如何高效的将A文件手机号存在于B文件中有的提取出来?
比较常见的答案: 1、将文件导入数据库,用一条SQL解决,类似select * from A where num in (select distinct num from B) 2、将B文件号码按条取出,通过类似grep脚本逐个过滤A文件
这些由于涉及数据的导入导出、数据库查询机制、文件的多次遍历因素的影响,都不是最佳方案。
要想效率到极致,主要考虑两个方面: 1、A和B文件只能遍历一次 2、查询号码是否存在的效率一定要高,且复杂度应该为常数,而不是线性甚至指数
记得很久之前,在网上看到一篇文章介绍google在GMAIL中如何解决海量垃圾邮件名单的问题,大致是初始化一个很大的文件,将邮件地址摘要化(例如MD5),使用摘要作为文件偏移量,在文件对应位置写入标识,用一个bit代表一个邮件地址;查询的话也是先计算摘要,再通过摘要直接读取文件对应文字看有否标识,这样的话就解决了每次可以快速查询邮件列表是否是黑名单,且查询复杂度为常数;如果不同的邮件地址出现了相同的摘要会出现误判(虽然这个概率很低很低),但误判的邮件地址用户发现后可以选择加入白名单,白名单的数量从理论上来说就是很少很少的,查询效率有保障。
基于这个思路,我们可以考虑使用手机号码作为偏移量,直接在文件或内存中建立一个结构;现在号段是13、14、15、18,号码最大差值是6*10^9,如果用1 bit代表一个号码,只需要6*10^9 / 1024 / 1024 / 8 = 716MB,放在内存里面也不多,比磁盘效率高百倍!再来,还可以按1x号段来建立多个标识串,比如13、14、15、18分别1个,就只需要大概477MB内存;甚至还可以细分到1XX号段。
软硬件环境:Lenovo X230,i5-3320M CPU@2.6GHz,12GB RAM,日立7200转500G缓存32M硬盘(HTS725050A7E630),64位WIN7 开发环境:Microsoft Visual Studio 2008,C++,64位编译 测试文件:A文件有3000万手机号码,380MB;B文件有150万手机号码,19MB;随机产生的,可能有少量重复测试结果(DEBUG模式):内存消耗约750MB;遍历B文件初始化数据结构耗时2秒;遍历A文件中B文件有的号码,保存到C文件耗时42秒,大小约196K,有1万5千多个号码。
一次遍历和高效查询,确保了结果也是很高效的! 测试代码猛击这里下载
换上了二胖,一切都好,就是下拉快速设置菜单顺序总是不顺手,系统没有提供调整顺序的功能,于是上网寻找方法,除了更换第三方的应用,就是寥寥无几的几个说可以修改 SystemUI.apk 里面的 res\layout\quickpanel_quick_settings ,可是到手的二胖的 SystemUI 里面根本没有这个文件,于是漫漫寻找。。。终于发现原来改到了 res\values\arrays.xml 里面了,更简单,直接修改 <string-array name="QuickSettingButtonAttribute"> 章节的顺序即可! SystemUI.apk是需要反编译,修改文件后,再重新编译、签名的,具体方法可以 Google 搜索,教程大把,只把要点记录一下: 1 、安装 jdk 、 apktool 2 、反编译准备 安装库文件,两个文件来自手机/system/framework 目录下,这里其实只用到了第一个 apktool.bat if framework-res.apk apktool.bat if twframework-res.apk 库文件会被 apktool 缓存到类似 C:\Users\XXX\apktool\framework\1.apk 目录下,反编译不同版本的文件时,记得要先清除 3 、反编译 SystemUI.apk 这个文件在手机 /system/app 目录下 apktool.bat d SystemUI.apk 4 、修改 arrays.xml 在反编译出现的目录 SystemUI\res\values\ 中,根据自己的喜好调整顺序即可,这是我的,头 5 个是在第一页可以都显示出来的,无需左右拖动,调整成最常用的 [quote] <string-array name="QuickSettingButtonAttribute"> <item>MobileData</item> <item>Wifi</item> <item>Bluetooth</item> <item>AutoRotate</item> <item>SilentMode</item> <item>Location</item> <item>PowerSaving</item> <item>DormantMode</item> <item>AllShareCast</item> <item>Sync</item> </string-array>[/quote] 5 、编译 SystemUI.apk apktool.bat b SystemUI SystemUI2.apk 如果提示错误 invalid resource directory name ,就需要更新一下 apktool 自带的 aapt.exe 文件版本,可以到 Android 开发包中去找,例如 android-sdk_r10-windows/platform-tools中的就可以下载 6 、签名 APK 实际是个 ZIP 文件,改后缀为 zip ,删除新包的 AndroidManifest.xml ,从旧包中复制 AndroidManifest.xml 和 META-INF 目录替换 7 、安装 将新包改名为 SystemUI.apk ,拷贝会手机 /system/app 目录下覆盖原有文件,修改 owner 、 group 和权限与原有文件一致。 强烈建议最后安装前到recovery 里面备份整个系统,以防止新文件有问题导致无法进入手机桌面,随时可以恢复! 完成!更新后发现会主屏壁纸设置丢失,重新设置一下就是了,其他正常。这个只是移动版本NOTE2 的修改方法,其他版本的 NOTE2 没有看到过 SystemUI 的情况,只要用的是同一结构的文件就可以。
无为而为
2011-11-20
分类:技术备忘
阅读:12391
评论:2
我采用的方法分为三个步骤: 1、Demux 将蓝光碟中的m2ts文件分解成视频、音频和字幕三个独立的文件,使用的软件是tsMuxeR ,找到对应的m2ts文件(一般位于蓝光盘的\BDMV\STREAM目录下,一般找体积最大那个m2ts文件,但也有一些是分成了很多小文件的,用PortPlayer之类的播放器播放看看就知道),选择视频、对应的音轨和字幕(还是用PortPlayer播放看看音轨和字幕),再设置Demux方式和输出目录即可。2、转换视频 使用ffmepg ,将H.264编码的1080P原始文件缩小到720P,采用了2次编码的方法,以下是自己琢磨的参数,IN和OUT代表输入和输出文件名,使用命令行方式,速度就可看你电脑的性能了,在偶的i3 530CPU上,2小时10分钟的片子,需要10个小时左右:ffmpeg -i IN -an -s 1280x720 -vcodec libx264 -level 4.1 -pass 1 -preset slow -f rawvideo -threads 0 -b:v 5000k -x264opts frameref=6:fast_pskip=0 -y nul ffmpeg -i IN -an -s 1280x720 -vcodec libx264 -level 4.1 -pass 2 -preset slow -f matroska -threads 0 -b:v 5000k -x264opts frameref=6:fast_pskip=0 OUT 3、Remux 将转换后的视频、视频和字幕(可以是自己找的srt之类的格式)合并成为mkv文件,使用了mkvtoolnix 中的mkvmerge工具(图形化界面mmg.exe),将相应的文件加入即可。如果有多个源文件,可以用append的方法合并成为一个mkv