RHEL 5服务篇—LAMP平台的部署及应用
LAMP架构是目前最为成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态WEB站点服务及其应用开发环境。LAMP这个词是一个缩写,具体包括:Linux系统,Apache网站服务器,Mysql数据库,PHP网页编程语言。LAMP平台的构成组件Linux:作为LAMP架构的基础,提供用于支撑WEB站点的操作系统,能够与其他三个组件提供更好的稳定性,兼容性。Apache:作为LAMP架构的前端,是一款功能强大,稳定性好的web服务器程序,该服务器直接面向用户提供网站访问,发送网页,图片等文件内容。MySQL:做为LAMP架构的后端,是一款流行的开源关系数据库系统。PHP:作为开发动态网页的编程语言,负责解释动态网页文件,并提供WEB用于程序的开发和运行环境。在前面的几篇文章中,已经详细的讲解了如何安装Apache和MySQl了,所以在这里就不在详细的说了,现在只需要构建好PHP的运行环境就可以组成LAMP平台了。注意:在构建LAMP平台时,各组件的安装顺序依次为Linux、Apache、MySQl、PHP。其中Apache和MySQl的安装并没有严格的顺序;而PHP环境的安装一般放在最后,负责沟通WEB服务器和数据库系统以协同工作。构建PHP运行环境1、准备工作如果该服务器上以前有安装过“.rpm”软件包的PHP,在此需要将其卸载掉,不然会出现程序冲突的情况。#rpm -e php php-cli php-ldap php-common php-mysql --npdeps下载php源码包,可以通过php官方站点http://www.php.net./downloads下载最新的源码包,作者在此使用的是5.3版本的。
2、安装扩展工具库在实际企业应用在,一部分基于PHP开发的web应用系统会需要额外的扩展工具,如数据加密工具libmcrypt、mhash、mcrypt等(可以从站点http://wwwsf.net中下载)。安装php软件包之前,应先安装好这些扩展工具。安装libmcrypt#tar zxf libmcrypt-2.5.8.tar.gz -C /user/src/#cd /usr/src/libmcrypt-2.5.8/#./configure#.make && make install#.ln -s /usr/local/lib/libmcrypt.* /usr/lib/ 安装mhash#tar zxf mhash-0.9.9.9.tar.gz -C /user/src/#cd /usr/src/mhash-0.9.9.9/#./configure #.make && make install#.ln -s /usr/local/lib/libmhash* /usr/lib/安装mcrypt#tar zxf mcrypt-2.6.8.tar.gz -C /user/src/#cd /usr/src/mcrypt-2.6.8/#./configure #.make && make install注意:只有安装完这三个扩展工具以后才可以安装PHP软件包,在安装这三个扩展工具时因注意安装顺序。
3、编译安装PHP#tar zxf php-5.3.6.tar.gz -C /usr/src#cd /usr/src/php-5.3.6/#./configure --prefix=/usr/local/php5 --with-mcrypt --with-apxs2=/usr/lcoal/httpd/bin/a上述配置命令中,各选项的含义如下所述:--prefix:指定将PHP安装到那个目录下。--with-mcrypt:加载数据加密等扩展工具的支持。--with-apxs2:设置Apache提供的apxs模块支持程序的文件位置。--with-mysql:设置mysql数据库程序的安装位置。--with-config-file-path:设置php的配置文件php.ini将要存放的位置。--enable-mbstring:启用多字节字符串功能,以便支持中文等代码。# make && makeinstall //编译并安装
设置LAMP组件环境1、创建及调整配置文件安装好PHP软件包以后,服务器并不会自己创建php.ini配置文件,但在源码目录下提供了两份样本文件,分别对应开发环境和生产环境。选择其中的一个样本文件,将其拷贝到php的配置文件目录下(/usr/lcoal/php5/),并改名为php.ini。#cp php.ini-development /usr/local/php5/php.ini我们可以通过修改php.ini文件中的配置内容,可以控制php网页的执行特性。如是否允许用户上传文件,设置上传文件的大小限制,设置默认使用的字符集,加载额外的扩展模块等。一般没有特殊要求,默认即可。#vim /usr/lcoal/php5/php.ini......//省略比分内容default-cahrset="utf-8" //设置默认字符集为utf-8file_uploads=on //允许通过PHP网页上传文件upload_max_filesize=2M //允许上传的文件大小限制max_file_uploads=20 //每个HTTP请求最多允许上传的文件数post_max_size=8M //每次通过表单POST提交的数据量限制short_open_tag=on //允许识别PHP短语法标记,即<?........?>
2、添加ZendGuardLoader优化模块为了进一步提高PHP程序的执行效率,优化页面加载速度,可以为PHP添加Zend公司开发的ZendGuardLoader优化模块。#tar zxf ZendGuardLoader-php-5.3.6-linux-glibc23-i386.tar.gz -C /usr/src#cd /usr/src/ZendGuardLoader-php-5.3.6-linux-glibc23-i386/php-5.3.x/#cp ZendGuardLoader.so /usr/local/php5/lib/php/修改php.ini配置文件,添加加载及启用ZendGuardLoader.so模块的配置语句。#vim /usr/local/php5/php.ini......//省略部分内容zend_extension=/usr/lcoal/php5/lib/php/ZendGuardLoader.sozend_loader.enable=1
3、修改httpd.conf配置文件,以支持php页面解析功能要让httpd服务器支持php页面解析功能,需要通过LoadModule配置项加载PHP程序的模块文件,并通过AddType配置项添加对“.php”类型网页文件的支持。#vim /usr/local/httpd/conf/httpd.conf......//省略部分内容LoadModule php5_module modules/libphp5.soAddType application/x-httpd-php .phpDirectoryIndex index.php index.html#/usr/local/httpd/bin/apachectl restart //重启服务以更新配置在上述配置内容,LoadModule行应该会在安装php的过程中自动添加,其中“php_module”表示模块名称;“modules/libphp5.so”是模块文件位置。而AddType行需要手动添加,DirectoryIndex行在原有基础上添加“index.php”即可。
测试PHP网页能否正确显示编写一个“.php”格式的测试网页文件,使用php内建的“phpinfo()”,函数显示服务器的php环境信息,php代码应包括在“<?php................?>”标记之间。#vim /usr/local/httpd/htdocs/test1.php<?phpphpinfo();?>然后通过浏览器访问测试网页,若能看到Zend引擎相关的信息,则表示ZendGuardLoader模块也以启用成功了。
至此整个LAMP环境已经搭建成功,现在我们就可以在这台服务器上部署动态网站了,如何在LAMP环境上部署动态网站,请听下章讲解。
美女未抱身先走,常使色狼泪满襟。。。。。。 穿别人的鞋,走自己的路,让他们找去吧。 爱——不是想出来的,爱——是做出来的!! 看帖回帖是美德!:lol 我真想亲口管你爷爷叫声:爹! 站的更高,尿的更远。
页:
[1]