慎用三五互联注册域名

既可怕又气愤,公司的域名在三五互联注册的,用的是他家的DNS。最近域名解析被接二连三的篡改,密码改了几次都不管用,他们的客服也查不出问题所在,每次都是敷衍。最无语的是域名的解析客服居然查不到,还要管用户要用户名和密码登录上去……上市公司的技术让人大跌眼镜啊...

严重怀疑三五互联的系统存在漏洞,可被他人利用对别人的域名解析进行篡改。公司已经开始着手转移域名注册商的工作了,这里提醒大家慎用三五互联。

用Python提取网页中的超链接

最近正在学习Python,打算用作爬虫开发。既然要做爬虫,首先就要抓取网页,并且从网页中提取出超链接地址。

下面是最简单的实现方法,先将目标网页抓回来,然后通过正则匹配a标签中的href属性来获得超链接,代码如下:

阳光部落原创,更多内容请访问http://www.sunbloger.com/

在Linux/CentOS中编译安装Python

心血来潮,想学习一下Python,听说用来做爬虫还不错。先从运行环境开始入手,CentOS中已经内置了Python,但版本似乎比较老,通过python -V命令看到版本是2.4.3。目前Python 2.x的最新版本号是2.7.8,那么就开始动手升级一下。

首先,下载源码包,命令如下:

这里需要特别注意一下,因为下载网址是https开头的,所以要给wget命令加上--no-check-certificate参数。

下载好源码包后,解压:

解压出Python-2.7.8这个目录后,我们开始对源码进行编译:

编译安装完成后,要替换掉系统自带的Python,但CentOS的yum依赖于Python工作,为了保证yum的正常运行,我们要在替换前,先将自带的Python更名备份,方法如下:

上面两行命令执行完后,可以分别用“python -V”和“/usr/bin/python-2.4.3 -V”来验证部署是否成功,正确的结果应该是2.7.8和2.4.3。

最后,要修改yum,让其运行指向旧的版本:

将第一行中的“#!/usr/bin/python”修改为“#!/usr/bin/python-2.4.3”,保存即可。

 

阳光部落原创,更多内容请访问http://www.sunbloger.com/

PHPCMS V9无法正常通过QQ登录的解决方案

这个故障的原因是PHPCMS V9的QQ登录功能代码中,使用了file_get_contents函数来获取腾讯的https网址,这类网址是通过ssl加密传输的。虽然,我们可以通过为PHP安装openssl扩展,让file_get_contents函数可以获取到内容,但获取到的内容还是加密的,无法正常的解密。

我的解决思路是自己编写一个通过curl读取数据的方法,替换掉PHPCMS原有的方法,具体如下: Continue Reading

搭建rsync同步机制 解决测试和生产环境的文件同步问题

rsync是类unix系统下的数据镜像备份工具——remote sync。是一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH、rsync主机同步。

通过搭建rsync服务端和客户端,可轻松解决开发中遇到的测试环境与生产环境的文件同步问题,且同步过程完全自动化,避免了人工上传文件容易出现的错传或漏传现象。

下面我们一起来看一下设置的过程。

生产环境主机(rsync服务端)设置

1.配置rsyncd.conf文件 Continue Reading

解决Nginx环境下PHP的flush失效问题

我在一次调试PHP逐行输出时候,发现ob_flush和flush两个都失效了,通过phpinfo基本能判断php.ini的设置是正常的。

再去看Nginx,发现Nginx中,有如下的设置:

fastcgi_buffer_size 128k;
fastcgi_buffers 8 128k;

问题基本找到了,Nginx会缓冲PHP输出的信息,当达到128k时才会将缓冲区的数据发送给客户端,那么我们首先需要将这个缓冲区调小,比如:

fastcgi_buffer_size 4k;
fastcgi_buffers 8 4k;

并且,必须禁用gzip

gzip off;

然后,在php中,在ob_flush和flush前,输出一段达到4k的内容,例如:

echo str_repeat(' ', 1024*4);

到此,PHP就可以正常通过ob_flush和flush逐行输出需要的内容了。

自动加载jQuery的Javascript代码示例

当我们在Javascript里需要用到jQuery但又无法判断是否加载过时,可以通过下面的方法来自动判断并加载jQuery,代码如下:

阳光部落原创,更多内容请访问http://www.sunbloger.com/

Javascript闭包实现Ajax在for循环中正常运行

假设我们现在需要在一个for循环中通过异步的方式向一个后端php程序请求数据,常规的写法Ajax是无法正常工作的,网上也有不少的解决方案,这里提供一个闭包方案,详细如下:

Javascript代码如下:

阳光部落原创,更多内容请访问http://www.sunbloger.com/

PHPCMS后台入口地址隐藏方法

1.在站点跟目录新建一个目录,目录名自定,例如manage,这个manage目录就是今后你登陆后台需要访问路径。

2.在manage目录里新建一个index.php文件,代码如下:

3.找到\phpcms\modules\admin目录,在这个目录中新建一个名为MY_index.php的文件,代码如下:

最后,将上面新建的目录和文件上传至服务器对应的路径后,你的PHPCMS站点就只能通过http://www.xxx.com/manage/这样的地址访问后台的登录入口了。

备注:上述方法仅针对PHPCMS V9版。

CentOS 7.0正式发布 新特性汇总

7月8日消息,基于Red Hat红帽免费公开的源代码的CentOS 7最新版正式发布,其基于企业级的Linux发行版本,是目前最受欢迎的Linux系统之一。

CentOS 7首个正式版的版本号为7.0.1406,主要更新内容如下:

— 内核更新至 3.10.0
— 支持 Linux 容器
— Open VMware Tools 及 3D 图像能即装即用
— OpenJDK-7作为缺省 JDK
— 原地升级 6.5 至 7.0
— ext4 及 XFS 的 LVM 快照
— 转用 systemd、firewalld 及GRUB2
— XFS 作为缺省文件系统
— 内核空间内的 iSCSI及FCoE
— 支持PTPv2
— 支持40G乙太网络卡

CentOS官方已经放出CentOS7.0.140 64位的版本下载地址,一如每个主要版本的首个发行本,多数组件都已作出改动及更新至较新版本。最重大的改动有包括内核更新至3.10.0、支持Linux 容器、Open VMware Tools 及 3D 图像能即装即用等。
下载地址:www.centos.org。