月度归档:2009年10月

LAMP服务器环境搭建

    近日由于PHP开发,需要一台Linux的PHP服务器,于是开始在虚拟机里面安装。无论是红帽还是Ubuntu,使用图形安装方式很轻松就能正常工作。不过鉴于真正的Linux服务器一般是不会安装图形界面的,所以决定命令行下手工搭建LAMP服务器。

    个人感觉,CentServer应该是一个很不错的Linux服务器系统,但是由于我的系统是32位的,无法在虚拟机里面安装64位系统,所以只能放弃。因为以前有过使用Ubuntu 的经历,所以选择了Ubuntu Server 9.04作为系统。

    安装Ubuntu Server没什么要说的,向导很明确,唯一需要注意的是要选择英语作为默认语言,如果选择中文,进系统以后一样显示不了中文,全是乱码,这样非常影响我们观察错误信息,所以需要选择英语。咱英语毕竟也学这么多年了,应该没问题哈[emot]grin[/emot]。另外,为了使用最新的软件包、实现最大化的自定义,我们不使用Ubuntu的apt-get命令一键安装LAMP环境。

    安装过程很快很顺利,完成后重启就能进入到Ubuntu server环境了。

    作为服务器,我们必须配置一个畅通的网络环境,必须的,否则这个系统也就没什么意义了。

    先来配置网卡,键入以下命令配置网卡的基本信息:

sudo vi /etc/network/interfaces 继续阅读

基于PHP的新Web开发框架

    最近因为要对一个项目进行重构,所以一直在研究PHP框架。大体看了看Zend Frameworks,仔细学习了下symfony,发现一个良好的MVC Web框架,足以改变开发习惯。但是无论是Zend Frameworks还是symfony,对于中小型项目的开发来说都过于臃肿,并不能很好的提升开发效率。在symfony中,一个PHP工程被分为项目/应用程序/模块的层次,对于扩展性要求比较高的大型PHP项目来说,这是一个很好的选择。国外框架在国内难以普及,很大一点障碍就是中文文档少,工程师培训成本较高。中小型项目则更期望一种高效的能够快速进行开发的PHP框架。

    先来看MVC模式。做JAVA的朋友可能对MVC模式比较了解,对于大多数PHP程序员来说,很少听说PHP上实现MVC的项目,或者说使用MVC模式的PHP项目无一例外的是一些大型企业级项目。由于MVC模式结构较为复杂,并不太适合中小型项目,所以我们需要一种全新的模式来审视PHP开发框架。

    一个项目使用框架,其主要目的就是简化开发,提高效率,同时提升程序本身的可扩展性,以便在客户需求发生变化时调整应用程序。同时框架的选择也应当考虑成本问题,即选择的框架是不是能够真正降低这个应用程序的开发和运营成本。对于中小型项目来说,开发人员希望能够快速地完成开发任务,客户则希望产品维护扩展方便、具有较高的效率。虽然像symfony这种框架能够实现相当强的可扩展性,但对于中小型项目来说,使用如此巨大的框架所需投入的开发成本、培训成本、维护成本都是巨大的。因此MVC的经典框架并不适用于中小项目的需求。

    那么,怎样才能解决成本、效率、效率、可扩展性直接的矛盾呢?我们需要一种全新的Web框架设计思路。 继续阅读