前提:php的安装是基于httpd和mysql的,所以,安装php之前首先要先安装httpd和mysql,HTTPD和MYSQL的安装顺序不做限定.这里我们的三个软件都安装在一个主机上面.
笔者从安装apache开始啦哈!
一.编译安装我们的三个源码包
首先将我们的编辑开发环境安装上去,这里我们使用yum源安装哈(yum的配置介绍我在之前的博客当中已经做过介绍这里不多介绍啦).
#yum groupinstall -y “Development Tools ” “Development Libraries ” "X Software Development"
二.Apache的源码安装.
httpd-2.4.4需要较新版本的apr和apr-util,因此我们需要先对它们进行升级。升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包。这里我们选择使用编译源码方式进行升级吧
首先将我们最新版的apr和apr-util源码包从网上下载下来吧.这里我已经事先将这两个包放在root的家目录里面了.
apr和apr-util是有依赖关系的所以我们必须先安装apr然后安装apr-utils
1.编译安装apr
# tar xf apr-1.4.6.tar.bz2
# cd apr-1.4.6
# ./configure --prefix=/usr/local/apr
# make && make install
2.编译安装apr-util
# tar xf apr-util-1.5.2.tar.bz2
# cd apr-util-1.5.2
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# make && make install
安装步骤如下:
3.httpd-2.4.4编译安装
httpd-2.4.4编译过程也要依赖于pcre-devel软件包,需要事先安装。此软件包系统光盘自带,因此,找到并安装即可。
#yum install -y pcre-devel
# tar xf httpd-2.4.4.tar.bz2
# cd httpd-2.4.4
# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-mpms-shared=all --with-mpm=event
# make && make install
至此apache已经编辑安装好,
下面我们要对我们的apache的配置环境做下调整因为我们的编辑时安装的文件和用yum rpm 安装的路径是不一样的
1.PidFile的路径信息,系统默认是找不到的.
#vim /etc/httpd/httpd.conf
2.为我们编辑安装的httpd提供sysv风格的脚本,脚本我放在附件里面了.下面的是制作的过程.
3.将apache提供的二进制执行当文件的路径添加到PATH中.
添加的信息如下.
现在我们可以启动我们的httpd服务器了.
看到上图就证明我们的apache已经安装成功
然后我们在本地物理机浏览器上面输入主机的地址看下我们的网页把.
三.编译安装我们的mysql-5.5.28
1.数据库是一个存储数据的地方我们的数据是有变化的所以,我们这里有必要将我们的mysql存储的数据放到一个逻辑卷上面.下面就准备我们的LVM吧,
这里假设其逻辑卷的挂载目录为/mydata,而后需要创建/mydata/data目录做为mysql数据的存放目录。
#fdisk /dev/sda
#pvcreate /dev/sda5
#partprobe
#vgcreate myvg /dev/sda5
#lvcreate -L 5G -n lv vg
#mke2fs -j /dev/vg/lv
#mkdir /mydata
#mount /dev/vg/lv /mydata
#vim /etc/fstab
/dev/vg/lv /mydata ext3 defaults 0 0
步骤如下:
2.mysql数据库服务启动是要有用户,设定mysql服务进程的权限也非常中要所以我们必须要给mysql服务器建立一个安全性的运行方式启动:
//创建用户
# groupadd -r mysql
# useradd -g mysql -r -s /sbin/nologin -M -d /mydata/data mysql
#mkdir /mydata/data
# chown -R mysql:mysql /mydata/data
3.准备工作做好之后,接下来就要安装我们的mysql服务器了.
# tar xf mysql-5.5.28-linux2.6-i686.tar.gz -C /usr/local
# cd /usr/local/
# ln -sv mysql-5.5.28-linux2.6-i686 mysql
# cd mysql
# chown -R mysql:mysql . 后面有一个点一定不要忘记了.
# scripts/mysql_install_db --user=mysql --datadir=/mydata/data
# chown -R root . 后面有一个点一定不要忘记
为mysql提供主配置文件:mysql服务器中有配置文件我们不需要手动配置,只需要将它的配置文件放到mysql配置文件的安装位置上面就可以啦.
# cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnf
刚才将我们的数据放在特定的目录下面了.所以这里我们给我们的配置文件中添加一行数据库存放位置的路径,还有修改此文件中thread_concurrency的值为你的CPU个数乘以2.
# vim /etc/my.cnf
为mysql提供sysv服务脚本:脚本mysql源码包中有所以我们不需要手动写这个脚本直接复制过来就可以啦.
# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod +x /etc/rc.d/init.d/mysqld
添加至服务列表:
# chkconfig --add mysqld
# chkconfig mysqld on
输出mysql的头文件至系统头文件路径/usr/include:
//这可以通过简单的创建链接实现:
#ln -sv /usr/local/mysql/include /usr/include/mysql
输出mysql的库文件给系统库查找路径:
#cho '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
而后让系统重新载入系统库:
# ldconfig
修改PATH环境变量,让系统可以直接使用mysql的相关命令。
# vim /etc/profile.d/msyql.sh
至此mysql服务器的配置已完成.下面就是启动mysql服务器.
进入mysql服务器
此时msyql的path还没有起效,这里我们在打开一个窗口就可以使用了.
四.php的安装编码.
1、phpphp-5.4.13依赖关系
如果想让编译的php支持mcrypt扩展,此处还需要下载ftp://172.16.0.1/pub/Sources/ngnix目录中的如下两个rpm包并安装之:
libmcrypt-2.5.7-5.el5.i386.rpm
libmcrypt-devel-2.5.7-5.el5.i386.rpm
接下来是安装php的过程:
#tar xf php-5.4.13.tar.bz2
#cd php-5.4.13
#./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts
#make &&make install
我们对./configure做下说明:
--prefix=/usr/local/php :php安装路径
--with-mysql=/usr/local/mysql :mysql安装路径
--with-openssl :支持openssl功能
--with-mysqli=/usr/local/mysql/bin/mysql_config:mysql与apache访问的另一种接口,安装在二进制目录下
--enable-mbstring:多字节string
--with-freetype-dir:安装的字体库头文件
--with-jpeg-dir:jpeg类型的库
--with-png-dir:png类型的库
--with-zlib:互联网上通用压缩库,先压缩再传送,减少带宽
--with-libxml-dir=/usr:xml库文件的路径
--enable-xml:支持xml功能
--enable-sockets:php支持套接字功能 --with-apxs2=/usr/local/apache/bin/apxs:基于apxs实现让php编译成apache模块
--with-mcrypt:支持额外的加密库
--with-config-file-path=/etc:php配置文件放置路径
--with-config-file-scan-dir=/etc/php.d :php配置文件的分段文件放置路径
--with-bz2 :压缩库
--enable-maintainer-zts:当apache使用worker或event这两个MPM,编译时使用该选项
编辑过程步骤:
为php提供配置文件:
[root@localhost php-5.4.13]# cp php.ini-production /etc/php.ini
//php包中提供了配置文件,把配置文件重命名为/etc/php.ini,php的配置文件后缀名是以.ini结尾即可.
编辑apache配置文件httpd.conf,以apache支持php
# vim /etc/httpd/httpd.conf
1、添加如下三行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
//能够让APACHE处理PHP结尾的文件
给httpd添加一个默认网页.后缀为php数据信息从配置文件中看服务根目录.
这里我们使用主机名再验证下我们的主机吧,
1.首先让我们的物理主机能够解析我们的www服务器主机步骤如下:
之后在浏览器输入http://ftp.yangyaru.com/index.php
这里我们还可以将我们php软件的相关信息在浏览器上面显示出来.
具体步骤如下:
php和mysql结合,在index.php页面文件中修改一下内容
<html><body><h1>It works! my test page</h1></body></html>
<?php
$conn=mysql_connect('localhost','root','');
if ($conn)
echo "<h2>Success...</h2>";
else
echo "<h2>Failure...</h2>";
phpinfo();
?>
//保存退出然后
[root@localhost htdocs]# service httpd restart //重启网络服务