lamp之源码环境搭建

简介:

目前网络上流行的网站架构方式 是LAMPlinux + apache+mysql+php/perl/phthon,

即用linux作为操作系统,apache作为服务器,mysql作为数据库,php /perl/phthon作为脚本语言,这四个软件都是免费的或开放源码软件,因此使用这种方式不用花一分钱(出人公开法外)就可以建设稳定的、免费的网站系统,所以深受欢迎。

源码安装的好处

服务器可以使用更新的的版本

服务器性能更稳定

可以自定义参数

 

搭建环境:

 

Linux系统:rhel 5.4

 

Apache 的可移植运行库apr-util-1.5.1.tar.gz

apr-1.4.6.tar.gz

Apache 服务器:采用源代码版本是httpd-2.4.4.tar.bz2

Mysql 服务器:采用二进制版本是mysql-5.5.15-linux2.6-i686.tar.gz

Php :采用源码版本是php-5.3.7.tar.bz2

 

安装过程:

 

1先安装

Apache 的可移植运行库

apr-1.4.6.tar.gz

apr-util-1.5.1.tar.gz

先解压到/usr/local/src/目录下

切换到/usr/local/src/目录下的apr-1.4.6.tar.gz目录下面

执行configure文件  指明安装目录--prefix

./configure  --prefix=/usr/local/apr/

Make

Make install

apr目录下形成一些可执行文件头文件库文件存放的目录

192523764.png

 

进入到bin目录有形成一个工具

 apr-1-config

切换到lib目录下面,有apr的库文件,要想让系统调用库文件,需要库文件加载到缓存文件里面缓存文件是ld.so.cache,在/etc/ld.so.conf.d目录下面创建一个任意以.conf格式结尾的文件比如说apr.conf内容指明库文件所在的目录

192536902.png

Ldconfig  刷新缓存文件查看缓存文件有关apr的库文件是否加载到缓存文件中

 

192619896.png

 

头文件所在的目录是 /usr/local/apr/include/ 下,但是系统找不到,系统可以找到/usr/include/目录下的文件    /usr/local/include/目录下的文件,所以要对include 目录创建符号链接 链接文件是/usr/include/apr

 

192641704.png

 

安装apache的另一个可移植性库软件apr-util,安装过程与第一个完全相同

执行configure文件  指明安装目录--prefix  指明apr工具所在的目录--with-apr

./configure  --prefix=/usr/local/apr-util     --with-apr=/usr/local/apr/bin/apr-1-config

 

192653243.png

Make 

Make install

 

进入到bin目录有形成一个工具

 apu-1-config

 

切换到lib目录下面,有apr的库文件,要想让系统调用库文件,需要库文件加载到缓存文件里面缓存文件是ld.so.cache,在/etc/ld.so.conf.d目录下面创建一个任意以.conf格式结尾的文件比如说apr-util.conf内容指明库文件所在的目录

 

192707196.png

 

 

Ldconfig  刷新缓存文件查看缓存文件有关apr-util的库文件是否加载到缓存文件中

192726931.png

 

头文件所在的目录是 /usr/local/apr/include/ 下,但是系统找不到,系统可以找到/usr/include/目录下的文件    /usr/local/include/目录下的文件,所以要对include 目录创建符号链接 链接文件是/usr/include/apr-util

192738193.png

2:安装apache服务器的httpd 2.4.4

 

先解压 然后把解压的目录移动到/usr/local/src/目录下

切换到/usr/local/src/目录下

进入到httpd-2.4.4目录查看文件和目录

192750831.png

打开INSTALL 文件查看安装的过程

 

192802969.png

 

 执行configure文件--prefix =prefix 指明安装的路径,

192911683.png

 

Make 

Make  install

 

切换到/usr/local/apache 目录下

形成很多目录bin/目录存放普通用户可执行的二进制文件或程序,

Include存放头文件

Logs 存放日志文件

Man 存放手册

Modules 存放额外安装的模块

 

给头文件做符号链接

Ln -s /usr/local/apache/include     /usr/include /apache

 

添加一条环境变量使bin/目录下的程序在任何路径下都可以执行

/etc/init.d/目录下编辑apache的开机启动控制脚本

定义三个变量lockfile指明锁文件的位置prog指明服务程序的位置configfile指明配置文件的位置

192929587.png

192929963.png

 

添加httpd服务到chkconfig,httpd服务在某种登录级别下,开机默认为onoff

需要在控制脚本httpd添加描述语句才可以接受chkconfig管理

 

 

192950961.png

192951260.png

测试一下apache服务器是否成功,能够访问到站点主目录下的apache自带的一个网页,说明apache安装成功

 

3:安装mysql服务器二进制版本

mysql-5.5.15-linux2.6-i686

mysql源码5.2版本安装好之后,需要安装c-make 工具,c-makephp连接数据库的应用程序,mysql源码安装过程./configure --with-prefix   需要指明安装路径等参数make  make install比较浪费时间大概需要一个小时,而二进制安装方法,只需要解压压缩文件,就会形成相应的目录,不需要编译只需要一些相应的基础命令,节约时间大概需要十分钟。

二进制安装的一些基本命令

193003780.png

 

创建符号链接 连接名为mysql 修改mysql 目录下的文件或目录的拥有者和所属组

 193041769.png

 

 

 

执行/scripts/目录下的mysql_install_db 这个脚本来安装mysql服务器自带的数据库和表

自动执行mysql下的bin目录下的myadmin 命令创建password和主机名。

193102385.png

 

mysql目录下的文件或目录的拥有者修改过来,拥有者改为管理员,mysql这个用户要对data目录的拥有操作的权限,所以date的拥有者还是mysql

193130353.png

可选项  安装bin目录下的mysql_safe程序用于保护data目录下的数据

 

193143927.png

拷贝mysql的服务脚本到init.d目录下 名称是mysqld

193157835.png

设置环境变量使../mysql/bin 目录下的普通用户可执行的二进制的文件或程序,/sbin目录下的只有管理员才可以执行的二进制的文件或程序,在任何路径下都可以执行。

在环境变量$PATH后面添加路径

193214441.png

执行/etc/profile 文件,刷新系统环境变量文件,查看$path

 

 

/etc/man.conf 文件里添加mysql 的手册 ,手册路径是/usr/local/src/mysql/man

193229760.png

 

给头文件include 做符号链接,连接到/usr/include/mysql

193302280.png

切换到lib目录下面,有库文件,要想让系统调用库文件,需要库文件加载到缓存文件里面缓存文件是ld.so.cache,在/etc/ld.so.conf.d目录下面创建一个任意以.conf格式结尾的文件比如说mysql.conf,内容指明库文件所在的目录。

 193318547.png

 

 

拷贝mysql的服务脚本,拷贝到init.d目录下,系统启动时可以运行此脚本。

 

chkconfig命令管理mysql

chkconfig主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

193332200.png

 

 

 

193426123.png

 

查看databasemysql服务器在安装时会自动生成四个数据库,你可以使用数据库也可以新建数据库,创建表格,查询数据库等操作。

193615277.png

进入mysql数据库,查看表格show tables;

 

193628984.png

 

安装好之后下面是php-5.3.7.tar.bz2源码的安装

步骤跟apache服务器差不多,先解压到/usr/local/src目录下 ,进入到目录里

执行./configure 

Apache2.4之前的版本是通过调用php模块来实现php动态页面的apxs是在安装php时生成动态连接模块的工具,所以在安装php时要指明apxs的位置

 

apache2.4以后的版本 ,apache服务器与php的连接是通过fastCGI,Fast CGI  HTTP服务器与你的或其它机器上的程序进行交谈的一种工具,其程序须运行在网络服务器,比如apache服务器。它的运行服务程序是php-fpmPHP-fpm 是 一个 PHP FastCGI 进程管理器Php-fpm可以和任何支持远端fastCGIweb server工作。

 

193644718.png

  make  

  make install 

切换到/usr/local/php目录下生成相应的目录

193709153.png

进入到lib目录和include目录里面没有动态库文件和头文件,所以不需要刷新缓存文件加载库文件,也不需要创建符号链接。

193725880.png

 

为了在任何路径下面都可以执行bin目录下的工具,打开/etc/profile 文件

在环境变量$PATH后面添加路径/usr/local/php/bin

然后执行. /etc/profile  文件

193738346.png

 

打开httpd的配置文件,在目录索引中把php网页放在最前面,apache服务器优先解析php页面,然后打开/usr/local/src/php-5.3.7/INSTALL php的安装引导文件复制AddType application/x-httpd-php .php .phtml语句到httpd.conf中,表明apache服务器可以解析以.Php  .phtml 结尾的页面。

 

193749581.png

到这里我们的lamp环境已经搭建好了,测试环境是否搭建成功呢?测试apachephp之间的连接,phpmysql数据库的连接

Apache服务器的默认站点主目录是/usr/local/apache/htdocs

测试apachephp之间的连接

在这个目录下面创建index.php页面

 

 

193812385.png

193812279.png

 

 

测试phpmysql数据库的连接,只需要在index.php页面中加入连接数据库的连接函数,查看函数的返回信息,就可以确定是否连接成功。

重启mysql服务

193829778.png

关闭mysql服务,出现警告信息,并输出failed

193848279.png

到这里说明我们的lamp 环境应经彻底的搭建完成。