php_ob_gzhandler_check以及令人崩溃的错误

继续诡异的问题。今天在一台Ubuntu 8.10 Server版本上用这样的configure条件: [code=’sh’] ‘./configure’ \ ‘–with-mysql=/usr/local/mysql’ \ ‘–with-apxs2=/usr/local/apache/bin/apxs’ \ ‘–enable-mbstring’ \ ‘–with-mcrypt’ \ ‘–with-gd’ \ ‘–with-jpeg-dir=/usr/local/’ \ ‘–with-png-dir=/usr/lib’ \…

Continue Reading →

最新的Linux+Apache+MySQL+PHP+Ruby on Rails(真麻烦)实战

本人曾经号称Linux+Apache+MySQL+PHP环境的搭建是闭着眼睛也能做的事情。历史上也的确曾经无数次闭着眼睛半小时就能搞定从下载到编译到最终配置成生产环境的服务器整个过程。然而昨天遇到的一切,却实实在在让我睁开眼睛集中精力总计用了8个小时才部署起一套Linux+Apache+MySQL+PHP+Ruby on Rails。 回忆总是痛苦的,不过为了大家不再痛苦重蹈覆辙,我还是愿意重走长征路,分析一下我犯过的错误吧。 1. Are we ready for x64? 我们实验室的德国学弟向来使用Linux。当年他到我们这里来的时候,作为网管的我需要给他安装一套英文版操作系统。我手上有Windows Server Computing Cluster Edition,正好是英文版,而且是正版,可惜是64位系统。在我询问他的过程中,他问我觉得64位版本的Windows怎么样。我回答”Only more troubles.”,他笑,告诉我看来Windows并没有准备好,还是Linux的64位支持比较好吧。其实我还是持某种怀疑态度。 我觉得,作为生产环境的网络管理员,使用64位版本操作系统总是要三思的事情。因为有太多太多兼容性问题需要考虑。在这方面,好像其实Windows做的反而更好一些,因为.NET编译的exe程序拿到64位版本Windows上不需要重新编译直接就可以原生64位地运行。64位Windows中还包含一个32位虚拟机,可以近乎完美地模拟32位环境,提供向下支持。 Linux就不是这么幸运了。很多库都没有考虑过这些问题,这也是导致这次部署麻烦多多的根源。 2.…

Continue Reading →

PHP对MySQL中DATE和TIME类型字段的处理

DATE和TIME是MySQL表里面字段类型的两种,分别用来保存日期和时间。 也许在开发机器上不太注意吧,对这两种类型的处理的时候,尤其是插入数据的时候,不注意真的还是会出问题的。比如这次,想自己探索写一个DDNS(Dynamic DNS),插入数据的时间的时候,发觉好像有点问题啊。服务器在美国,自然是美国时间,我总不至于去手动处理时区问题…? [code=’php’] mysql_query(“SET time_zone = ‘+8:00′”); [/code] 在执行MySQL查询之前,执行设置时区,之后的操作就都是东八区北京时间了。 [code=’php’] mysql_query (“INSERT INTO `db`.`table` (`date` ,`time`) VALUES (NOW(), NOW());”);…

Continue Reading →

如何在Windows Server 2008的IIS 7.0下配置MySQL+PHP环境

本文致力于描述如何在Windows Server 2008下安装配置用于开发或产品的MySQL及PHP环境。 环境说明: 操作系统:Windows Server 2008 Standard Edition,英文版(由Microsoft DreamSpark支持) 相关软件:Internet Information Services 7.0 MySQL:MySQL 5.0.67, Windows Essentials (x86)。(最新版下载地址) PHP:PHP…

Continue Reading →

PHP+MySQL防止注入式攻击

防止你的网站被注入式攻击的第一步是理解什么是注入式攻击。一个注入式攻击是网站的某个访客在你的网站输入表单中输入了某种内容,试图改变你的MySQL查询本意。例如,某些人可能会在登陆窗口使用这种方法绕开登陆。如果你的查询用户名和密码的形式类似这样子: [code=’sql’] SELECT * FROM users WHERE username = {username} AND password = {password } [/code] 那么用户可以使用任意的用户名,使用这个密码: [code=’sql’]’ OR ”=”[/code]…

Continue Reading →

更新同济网服务器MySQL字符集

12月份原来在炎黄的服务器空间就要过期了, 想了想是不是继续续费的问题, 最终决定还是搬到同济网服务器吧. 毕竟是一个经常关心的服务器, 几乎每天都来维护, 放在自己手里毕竟还是放心一点. 无奈同济网服务器上的MySQL字符集还是老的3.25版本的latin1字符集, MySQL的版本也过低, wordpress装不上. 更新字符集的问题老早就提出来了, 只是这个过程实在太复杂, 一直没实施. 其实这其中的每个细节我都仔细想过, 只是没有操作出来而已. 不过即便如此, 今天在真正操作的时候心里也是没底的. 起了个大早, 6点半就开始在Linux主机上工作, 一直做到下午, 一共转了近1000万行SQL数据,…

Continue Reading →