LANP架构指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括linux操作系统、apache网站服务器、mysql数据库服务器、PHP(或PerlPython)网页编程语言。

在构建LAMP平台时,php环境的安装要放在最后,apachemysql的安装方法在其他两篇博客中有详细介绍,这里不再进行描述。

 

 

 

实验要求:

1.构建LAMP网站平台,支持PHP网页解析,并能够通过PHP网页使用MySQL数据库。

2.安装并配置phpMyAdmin系统,使用数据库账号elcadmin登录,全权维护elcdb库。





1.构建PHP运行环境

1)准备工作

构建LAMP平台及应用系统_Linux、LAMP构建

    为了避免发生程序冲突等现象,建议现将RPM方法安装的php及相关依赖包(如果已存在)卸载。另外,需要安装zlib-devellibxml2-devel包(系统光盘自带)。

 

在实际企业应用中,一部分基于PHP开发的web应用系统会需要额外的扩展工具,如数据加密工具libmcryptmhashmcrypt等(可以从站点http://sourceforge.net下载)。

安装php软件包之前,应先安装好这些扩展工具程序。

 

2)安装扩展工具库

安装libmcrypt

构建LAMP平台及应用系统_Linux、LAMP构建_02

构建LAMP平台及应用系统_Linux、LAMP构建_03

/usr/lib 目录下存放用户程序的库文件,创建软链接,便于系统执行。

 

安装mhash

构建LAMP平台及应用系统_Linux、LAMP构建_04

构建LAMP平台及应用系统_Linux、LAMP构建_05


安装mcrypt

构建LAMP平台及应用系统_Linux、LAMP构建_06

构建LAMP平台及应用系统_Linux、LAMP构建_07


配置出现错误,需要配置变量:

构建LAMP平台及应用系统_Linux、LAMP构建_08


构建LAMP平台及应用系统_Linux、LAMP构建_09

然后,再次进行配置、编译及安装。


(3)编译安装PHP

构建LAMP平台及应用系统_Linux、LAMP构建_10

各配置选项的含义:

--prefix:指定PHP程序的安装目录。

--with-mcrypt:加载数据加密等扩展工具支持。

--with-apxs2:设置apxs的位置(该模块由Apache HTTP Server提供)。

--with-mysql:设置MySQL数据库服务程序的安装位置。

--with-config-file-path:设置PHP的配置文件php.ini将要存放的位置。

--enable-mbstring:启用多字节字符串功能,以便支持中文等代码。

注意:一般情况mysql服务会构建成一台独立的服务器,所以在编译配置php时,配置选项--with-mysql=/usr/local/mysql要修改为--with-mysql=mysqlnd  --with-mysqli=mysqlnd  --with-pdo-mysql=mysqlnd


(4)php.ini配置调整

构建LAMP平台及应用系统_Linux、LAMP构建_11

注意:安装好PHP软件包以后,服务器并不会自动创建php.ini配置文件,在源代码目录下提供了两个样例配置文件,分别对应于开发环境、生产环境,所以将其中一个复制到PHP的配置文件目录/usr/local/php5下,并改名为php.ini

 

通过修改php.ini文件中的配置项,可以控制php网页的执行特性,常用的配置项如下:

default_charset = utf-8     //设置默认字符集为utf-8

fil_uploads = On            //允许通过PHP网页上传文件

upload_max_filesize = 2M    //允许上传的文件大小限制

max_file_uploads = 20       //每个HTTP最多允许请求上传的文件数

post_max_size = 8M         //每次通过表单post提交的数据量限制

short_open_tag = On        //允许识别PHP短语法标记,即<??>


(5)添加ZendGuardLoader优化模块

ZendGuardLoader优化模块用于提高PHP程序的执行效率,优化页面加载速度,该模块适用于PHP5.3系列版本,可以从Zend公司的官方站点http://www.zend.com下载。

构建LAMP平台及应用系统_Linux、LAMP构建_12

构建LAMP平台及应用系统_Linux、LAMP构建_13

解包,复制模块文件到PHP程序的模块文件夹。


构建LAMP平台及应用系统_Linux、LAMP构建_14

构建LAMP平台及应用系统_Linux、LAMP构建_15

 修改php.ini配置文件,添加加载及启用ZendGuardLoader.so模块的配置语句。


6httpd.conf调整配置

构建LAMP平台及应用系统_Linux、LAMP构建_16

构建LAMP平台及应用系统_Linux、LAMP构建_17

通过LoadModule配置项加载PHP程序的模块文件(该配置项在安装PHP的过程中自动添加)。


构建LAMP平台及应用系统_Linux、LAMP构建_18

通过AddType配置项添加对.php类型网页文件的支持(需要手动添加)。


构建LAMP平台及应用系统_Linux、LAMP构建_19

修改DirectoryIndex配置行,添加index.php配置项。


构建LAMP平台及应用系统_Linux、LAMP构建_20

重启httpd服务

 

7)测试LAMP协同工作

构建LAMP平台及应用系统_Linux、LAMP构建_21

构建LAMP平台及应用系统_Linux、LAMP构建_22

编写一个.php格式的测试网页文件(phpinfo()PHP内建函数,用于显示服务器的PHP环境信息)。


构建LAMP平台及应用系统_Linux、LAMP构建_23

通过浏览器访问测试网页,出现该页面,表示web服务器已经能正常显示PHP网页。


构建LAMP平台及应用系统_Linux、LAMP构建_24

构建LAMP平台及应用系统_Linux、LAMP构建_25

编写一个测试网页文件(mysql_connect()函数用于连接MySQL数据库


构建LAMP平台及应用系统_Linux、LAMP构建_26

通过浏览器访问,如果显示该页面,表示能够通过PHP网页访问MySQL数据库。

 

2.创建elcdb库,并授权用户elcadmin

构建LAMP平台及应用系统_Linux、LAMP构建_27

构建LAMP平台及应用系统_Linux、LAMP构建_28

构建LAMP平台及应用系统_Linux、LAMP构建_29


3.安装并验证phpMyAdmin系统

phpMyAdmin是一个使用PHP语言编写,用来管理MySQL数据库的Web应用系统。源码包可以从官方网站http://www.phpmyadmin.net下载。

构建LAMP平台及应用系统_Linux、LAMP构建_30

构建LAMP平台及应用系统_Linux、LAMP构建_31

解包并复制到网站目录


构建LAMP平台及应用系统_Linux、LAMP构建_32

构建LAMP平台及应用系统_Linux、LAMP构建_33

建立配置文件config.inc.php,可以参照样例文件,默认已经设置了一个短语密钥(在blowfish_secret行,用于网页cookie认证),可以根据需要自行修改。

注意:mysql服务器并没有和phpMyAdmin在同一台服务器上时,需要修改config.inc.php,来指定mysql服务器的IP地址。

构建LAMP平台及应用系统_Linux、LAMP构建_34

localhost修改为mysql服务器的IP地址


构建LAMP平台及应用系统_Linux、LAMP构建_35

访问phpMyAdminWeb管理界面,输入MySQL数据库的用户和密码。


构建LAMP平台及应用系统_Linux、LAMP构建_36