解决Google(谷歌)服务不可用导致WordPress后台缓慢的问题

因为某些原因近期Google的大部分服务无法使用,特别是谷歌字体和一些公共库的调用问题,因为浏览器加载这些资源多是阻塞形式的,如果不能及时获取资源,那么浏览器将一直在等待,这样就会影响页面其他元素的渲染,对于用户来说,就会表现为页面加载缓慢或者打开困难。

因为我的博客之前调用了Google的字体服务,所以前一段时间打开页面时出现了这类现象,通过FireBug调试找到是Google字体的原因。搜索网络后找到了替代的办法,那就是使用360提供的前端公共库CDN服务缓存库

这些公共库主要分为:常用前端公共库Google前端公共库Google免费字体库

继续阅读

检测并修复OpenSSL Heartbleed漏洞

这个漏洞已经出来好长时间了,自己也一直没有能够引起重视,今天看到有一款扫描检测工具CROWDSTRIKE HEARTBLEED SCANNER可以检查主机是否存在此类漏洞,然后就下载下来试了试,结果本博客直接躺枪。想想还是别拖着了,遂动手修复,其实修复的过程很简单,这里简要说明如下:

由于我使用的是Debian系统,所以这里主要记录的是Debian系统下的OpenSSL升级。

对于图省事的朋友来说,下面的命令可以轻松解决大多数问题:

sudo apt-get update
sudo apt-get upgrade

这两句命令其中第二句将升级系统中所有可更新的软件,但是有过之前惨痛的服务器升级经历后我觉得还是不能轻举妄动,所以再查阅网络后我采取特定升级的方法:

sudo apt-get update
sudo apt-get install openssl libssl1.0.0

继续阅读

解决WordPress分类目录、标签丢失的问题

今天偶然注意到WordPress的分类和标签消失了,开始以为是数据库表损坏,于是通过PHPMyAdmin修复表,但是注意到修复表的过程中有一个错误:Can't create/write to file '/tmp/...,错误代码为13,基本上是因为没有权限导致的,由于这个要修复的表和分类标签表关系不大,于是没多想,只有上网搜索分类目录丢失的具体原因。

网上遇到这个问题的大多数是因为临时文件夹满导致磁盘空间不足的原因,比如这里有篇帖子《My Categories and Tags all disappeared! Please HELP!》,多数人通过清除临时文件夹的文件释放磁盘空间来解决了这个问题,但是我主机上临时文件夹/tmp是空的,而且磁盘空间也绰绰有余,不存在这类问题。

我注意到刚才修复表的错误,会不会是因为MySQL没有读写/tmp文件夹的权限?通过ls -l命令发现只有root有写权限,网上有建议新建一个临时目录,然后再修改配置文件的。

觉得麻烦,索性直接chmod 777 /tmp开放全部权限了,设置完成后,PHPMyAdmin可以正常修复表了,分类和标签也回来了。

博客改版采用新主题界面

由于不能忍受先前的在官方Twenty Eleven主题基础上定制的自用主题Blaue的种种Bug,所以决定重新定制一个新的主题自用,实在想不出什么好的名字,姑且就叫做Blaue V2吧,Blaue这个词是由于之前主题的主色调是Black & Blue,所以造出了这么个词,现实中貌似还真有这么个词,不过好像是德文,好了,扯多了,下面谈谈这次主题改造的细节吧。

这次主题改的母版是toolbox主题,但是改动比较大,特别是将Blaue的部分构架融合过来了,而之前的Blaue是基于Twenty Eleven主题的,算是混血儿,所以这次Blaue V2只算是在Blaue基础上做的改进。

1. 放弃了响应式自适应的流布局,采用固定布局模式,固定布局容易操作些,不容易错位,也能很好兼容大多数浏览器。

2. 采用JQuery库,原先我一直很抵触背这么大个JS库的,之前使用的纯JavaScript代码来实现相关功能,后来采用Sizzle选择器(也是JQuery内置的选择器),现在想想干脆直接用JQuery得了,省得为兼容问题而纠结。

3. 采用Google Web Font优化部分英文字体显示。

4. 菜单挪到了顶部,采用当前比较流行的设计样式,本来想把字体大小那段也弄到顶部的,但是感觉有点奇怪,所以作罢。

5. 评论这块采取了NeoEase的做法,将网友讨论和Trackbacks(Pingbacks)用选项卡进行分离,避免阅读评论的干扰,评论发布采用了Ajax技术,但是感觉发布成功这块处理得不是很好的。

6. 404找不到页面和搜索页面单独进行了优化,搜索页面除了显示本站结果外还将用选项卡分割显示Google自定义搜索的结果。

继续阅读

由于VPS启动失败导致博客无法访问

昨天(8月12日)下午14:18收到监控报告提示博客无法访问,遂检查VPS状态,但发现VPS无法连接,本以为和上次一样是由于母机遭到了DDoS,但查看了服务商的状态报告,母机正常,于是进入控制面板,控制面板提示VPS运行正常,就是内存消耗比较奇怪,正常要消耗100多MB,但这次就67MB,虽然提示正常运行,但是VPS依旧无法访问,提示:Warning Unknown feature ppp:on,于是重启了VPS,结果问题依旧,初步怀疑是VPS系统出了故障,但是事情比较多,也不想浪费时间在重做VPS系统上,于是发了ticket到服务商客服,结果今天查看,发现问题解决了。

继续阅读

近况@2012.04.12

很长时间不写博客了,主要是因为比较忙,当然也受某些无视我的转载要求不署名转载的影响,我的转载要求在文末注明了,可能不太明显吧,准备提前到文头,当然之所以放到不是很明显的地方,主要是为了不影响大家阅读,把主要精力能够放到内容上来,当然对于某些人来说,即使版权声明和转载要求再明显也无济于事。

今天中午的时候博客出现无法访问的现象,另外收到第三方监控报警的邮件:

中国电信骨干网故障

本来以为服务提供商又被DDoS了,准备登录服务商网站上查询相关信息,结果服务商网站也打不开,和其他网友讨论得知由于中国电信骨干网发生问题导致国外网站无法访问,正好我的网站也处于境外,不过还好不久后就恢复了,基本上给自己提了个醒:网站数据要及时备份!当然无论是境内还是境外。不过我准备适时将网站迁回国内,主要做技术网站,备案问题应该不大,就是麻烦些吧,毕竟网站访客多是来自国内的朋友。

博客基本恢复运行

今天早上的MySQL的崩溃让我下定决心要升级老旧的MySQL,哪知道遇到了一堆麻烦的事情,也让我感到服务器升级前一定要慎重再慎重的重要性。

首先就是MySQL就够我折腾的了,升级到5.5版本,本来以为只需要apt-get install就可以解决的问题,但是出现了杯具的错误,首先是Unable to set password for the MYSQL root…This may happened because the account already has a password…subprocess installed post-installation script return error exit。然后mysqld守护进程启动失败!于是想是不是MySQL 5.1没有卸载干净?本来是想直接从5.1升级的,结果死活升级不了,于是使用apt-get dist-upgrade,但是提示需要REMOVE mysql-server,下定决心后按下y回车,然后老旧的MySQL华丽丽的被卸掉了。好了,后来我采取下面两句罗列并删除所有和mysql有关的package:

dpkg --get-selections | grep 'mysql-' | awk '{print $1}'
# purge表示清除配置文件,也就是彻底删除
apt-get purge package1 package2 ...

继续阅读

本站MySQL数据库崩溃正在尝试恢复

MySQL意外崩溃,所有的页面均出现404无法访问的问题,后台无法登录,出现绿色背景以及Updating SEO configuration options in database(猜测是All In One SEO插件问题)。通过myisamchk -r检测数据库,并且通过invoke-rc.d mysql restart重启数据库服务基本解决问题,可惜后台登录不上出现:“您没有足够的权限访问该页面。”的错误消息。检查WordPress后台登录的数据库表wp_users以及wp_usermeta,发现其中表wp_usermeta提示“’wp_usermeta’ is marked as crashed and should be repaired”,看来wp_usermeta表损坏了,通过REPAIR TABLE命令处理过,然后后台登录正常。检查数据,发现丢失了一条评论,应该是Just_fly同学的评论,在此表示抱歉了。后来翻了一下自动备份文件夹,找到一份几个小时前的备份,立即恢复,丢失的评论也被找到了。

目前还在做扫尾工作,查看了MySQL的所有日志,竟然没有找到任何有效信息,由于这次崩溃导致WordPress出现诡异的找不到数据404错误,而不是连接不到数据库503错误,所以外部监控网站没有能够及时捕获这次故障时间,我是临近中午才发现问题的。好了,看来准备把这个老旧的MySQL数据库升级一下了,之前还考虑这个运行蛮稳定的就不升级了,看来不升级不行哎。

这是第200篇文章,没想到出现这样的问题,也算是个纪念吧,经常备份是个好习惯哦。

ICP备案证书被注销

当前网站备案证书“苏ICP备05028728号”被注销,原因不明,经过与服务器空间商的紧急联系,网站目前临时托管于国外,相关重新备案的手续尚在准备办理之中,给大家带来的不便还望见谅。
此次受影响的域名wangye.org、www.wangye.org。

今天早上发现网站无法访问,相关域名被301重定向到http://127.0.0.1的本机IP,开始以为是DNS问题,经过技术排查发现是主机空间的原因,在与服务器空间商的联系后得知是自己的备案被注销导致站点被暂停运行的原因,由于目前备案手续较为繁琐,所以已经联系空间商将网站临时托管于国外主机,但愿能早日办妥相关备案。

最后感谢大家的帮助和支持!

新年第一篇

总是感觉自己没有毅力,不能很好的去打点自己的网站,上次听到威哥的一番教导,顿然醒悟,玉米放在那儿也是一种资源浪费,何况自己也没有时间能够再重新构建一个新网站,与其在浪费,还不如合理利用下资源,更重要的是有些想法和经验还是值得与大家分享的,当然之前要感谢我的母校对于我网站空间的支持,可以说已经伴随我有6个年头了,当然现在也有工作了,不能再麻烦学校支持了。在这里要感谢威哥推荐的海神空间,感觉不错。

怀念起上学的时候,几乎每个暑假,我都会把网站程序重写一遍,当然主要是学习一些制作技术,可悲的是由于空间的限制,只能采用ASP去编写,这样就导致了代码很难维护,所以后来自己也不愿意去更新代码了,然后就这样荒废了下去,当然那时的技术能力是有限的,网页制作方面也只会ASP技术,当自己屁颠屁颠的在专研ASP技术时,微软却放弃了ASP,我傻眼了,也许当初如果选择PHP,现在也不会纠结了。后来很长一段时间,改变了研究方向,把主要精力放在了Win32程序的编写中,这段时间好好的研究了下Windows下的C语言开发,最大的愿望就是能够做个自己的脚本解释器,然后让自己的网站运行在自己的脚本解释器下。

怀念起上学的时候,那时候自己有充裕的时间去专研技术,而现在却因为生活工作而奔波,由于工作需要,自己又硬着头皮摸索了ASP.NET,准备为单位弄个业务系统,也许没那么多时间给我研究网站了吧,考虑再三,我觉得,先把下一代网站的界面套在一个现成的博客系统上,看到威哥的WordPress搞得挺红火,本来是想用WP的,后来觉得还是先弄个简单的系统玩玩,经过考察研究,Typecho这个程序进入了我的视野,轻量的MVC架构,去掉了很多不必要的组件,很是喜欢。

哦,对了,还要感谢威哥对界面提的一些修改意见,毕竟他是这方面的专业人士嘛。

之前的网站流量可以说已经损失殆尽了,我想就从现在起,多写一些高质量的文章吧。