lamp之源码环境搭建
简介:
目前网络上流行的网站架构方式 是LAMP(linux + 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目录下形成一些可执行文件头文件库文件存放的目录
进入到bin目录有形成一个工具
apr-1-config
切换到lib目录下面,有apr的库文件,要想让系统调用库文件,需要库文件加载到缓存文件里面缓存文件是ld.so.cache,在/etc/ld.so.conf.d目录下面创建一个任意以.conf格式结尾的文件比如说apr.conf内容指明库文件所在的目录
Ldconfig 刷新缓存文件查看缓存文件有关apr的库文件是否加载到缓存文件中
头文件所在的目录是 /usr/local/apr/include/ 下,但是系统找不到,系统可以找到/usr/include/目录下的文件 /usr/local/include/目录下的文件,所以要对include 目录创建符号链接 链接文件是/usr/include/apr
安装apache的另一个可移植性库软件apr-util,安装过程与第一个完全相同
执行configure文件 指明安装目录--prefix 指明apr工具所在的目录--with-apr
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
Make
Make install
进入到bin目录有形成一个工具
apu-1-config
切换到lib目录下面,有apr的库文件,要想让系统调用库文件,需要库文件加载到缓存文件里面缓存文件是ld.so.cache,在/etc/ld.so.conf.d目录下面创建一个任意以.conf格式结尾的文件比如说apr-util.conf内容指明库文件所在的目录
Ldconfig 刷新缓存文件查看缓存文件有关apr-util的库文件是否加载到缓存文件中
头文件所在的目录是 /usr/local/apr/include/ 下,但是系统找不到,系统可以找到/usr/include/目录下的文件 /usr/local/include/目录下的文件,所以要对include 目录创建符号链接 链接文件是/usr/include/apr-util
2:安装apache服务器的httpd 2.4.4
先解压 然后把解压的目录移动到/usr/local/src/目录下
切换到/usr/local/src/目录下
进入到httpd-2.4.4目录查看文件和目录
打开INSTALL 文件查看安装的过程
先 执行configure文件--prefix =prefix 指明安装的路径,
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指明配置文件的位置
添加httpd服务到chkconfig,让httpd服务在某种登录级别下,开机默认为on或off
需要在控制脚本httpd添加描述语句才可以接受chkconfig管理
测试一下apache服务器是否成功,能够访问到站点主目录下的apache自带的一个网页,说明apache安装成功
3:安装mysql服务器二进制版本
mysql-5.5.15-linux2.6-i686
在mysql源码5.2版本安装好之后,需要安装c-make 工具,c-make是php连接数据库的应用程序,mysql源码安装过程./configure --with-prefix 需要指明安装路径等参数make make install比较浪费时间大概需要一个小时,而二进制安装方法,只需要解压压缩文件,就会形成相应的目录,不需要编译只需要一些相应的基础命令,节约时间大概需要十分钟。
二进制安装的一些基本命令
创建符号链接 连接名为mysql 修改mysql 目录下的文件或目录的拥有者和所属组
执行/scripts/目录下的mysql_install_db 这个脚本来安装mysql服务器自带的数据库和表
自动执行mysql下的bin目录下的myadmin 命令创建password和主机名。
把mysql目录下的文件或目录的拥有者修改过来,拥有者改为管理员,mysql这个用户要对data目录的拥有操作的权限,所以date的拥有者还是mysql。
可选项 安装bin目录下的mysql_safe程序用于保护data目录下的数据
拷贝mysql的服务脚本到init.d目录下 名称是mysqld
设置环境变量使../mysql/bin 目录下的普通用户可执行的二进制的文件或程序,/sbin目录下的只有管理员才可以执行的二进制的文件或程序,在任何路径下都可以执行。
在环境变量$PATH后面添加路径
执行/etc/profile 文件,刷新系统环境变量文件,查看$path
在/etc/man.conf 文件里添加mysql 的手册 ,手册路径是/usr/local/src/mysql/man
给头文件include 做符号链接,连接到/usr/include/mysql
切换到lib目录下面,有库文件,要想让系统调用库文件,需要库文件加载到缓存文件里面缓存文件是ld.so.cache,在/etc/ld.so.conf.d目录下面创建一个任意以.conf格式结尾的文件比如说mysql.conf,内容指明库文件所在的目录。
拷贝mysql的服务脚本,拷贝到init.d目录下,系统启动时可以运行此脚本。
chkconfig命令管理mysql,
chkconfig主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。
查看database,mysql服务器在安装时会自动生成四个数据库,你可以使用数据库也可以新建数据库,创建表格,查询数据库等操作。
进入mysql数据库,查看表格show tables;
安装好之后下面是php-5.3.7.tar.bz2源码的安装
步骤跟apache服务器差不多,先解压到/usr/local/src目录下 ,进入到目录里
执行./configure
Apache的2.4之前的版本是通过调用php模块来实现php动态页面的,apxs是在安装php时生成动态连接模块的工具,所以在安装php时要指明apxs的位置。
在apache的2.4以后的版本 ,apache服务器与php的连接是通过fastCGI,Fast CGI 是HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上,比如apache服务器。它的运行服务程序是php-fpm,PHP-fpm 是 一个 PHP FastCGI 进程管理器,Php-fpm可以和任何支持远端fastCGI的web server工作。
make
make install
切换到/usr/local/php目录下生成相应的目录
进入到lib目录和include目录里面没有动态库文件和头文件,所以不需要刷新缓存文件加载库文件,也不需要创建符号链接。
为了在任何路径下面都可以执行bin目录下的工具,打开/etc/profile 文件
在环境变量$PATH后面添加路径/usr/local/php/bin
然后执行. /etc/profile 文件
打开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 结尾的页面。
到这里我们的lamp环境已经搭建好了,测试环境是否搭建成功呢?测试apache与php之间的连接,php与mysql数据库的连接
Apache服务器的默认站点主目录是/usr/local/apache/htdocs
测试apache与php之间的连接
在这个目录下面创建index.php页面
测试php与mysql数据库的连接,只需要在index.php页面中加入连接数据库的连接函数,查看函数的返回信息,就可以确定是否连接成功。
重启mysql服务
关闭mysql服务,出现警告信息,并输出failed
到这里说明我们的lamp 环境应经彻底的搭建完成。