一、简介
编译安装之前的准备:
(1)尽量用纯净的系统。作为初学者,建议使用纯净的系统,因为这样可以避免一些莫名错误的发生。
(2)编译安装需要开发环境,将开发环境安装好。
具体步骤如下:
(1)确保时间的一致性:hwclock -s
(2)关闭selinux:setenforce 0
(3)yum grouplist (查看安装的软件包组,确保开发环境安装,主要安装development Tools和Development Libraries)
#yum -y groupinstall "Development Libraries"
(4) 安装APR
APR的作用:可以让apache运行在不同的操作系统中,不用区分底层的操作系统,使上层的开发机制相同,当开发
apache的新功能时,可以不受不同操作系统的影响。
#yum info apr(可以查看APR信息)
httpd-2.4.2需要较新版本的apr和apr-util,因此需要事先对其进行升级。升级方式有两种,一种是通过源
代码编译安装,一种是直接升级rpm包。这里选择使用后一种方式进行。
下载如下4个软件包:
apr-1.4.6-1.i386.rpm
apr-devel-1.4.6-1.i386.rpm
apr-util-1.4.1-1.i386.rpm
apr-util-devel-1.4.1-1.i386.rpm
下载完成之后,使用“rpm -Uvh”进行升级即可。另外,httpd-2.4.2编译过程也要依赖于pcre-devel软件包,需要事先安装。
二、编译安装apache
(1)首先下载httpd-2.4.2到本地。而后执行如下命令进行编译安装过程:
提醒:安装前要查看INSTALL和README文件。
用./configure --help|less (查看安装的常用选项)
# tar xf httpd-2.4.2.tar.bz2
# cd httpd-2.4.2
# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl
--enable-cgi --enable-rewrite --with-zlib --with-pcre(指定这一项要确保pcre-devel包安装)
其它常用选项:
--with-apr=
--with-apr-util=
--enable-suexec
--with-suexec (哪一个虚拟主机的哪一个文件可以临时切换到哪个目录中运行)
--with-suexec-caller=
--with-suexec-docroot=
--with-suexec-logfile=
--with-suexec-bin=
--with-suexec-uidmin=
--with-suexec-gidmin=
(2)# make && make install
安装完之后的工作:
(1)让httpd -l(列出所有模块)生效:
#vim /etc/profile在此文件中加上:
PATH=/usr/local/apache/bin:$PATH
让其生效:(1)source /etc/profile(不建议这样做,因为source多次会重复的)
(2)export PATH=/usr/local/apache/bin:$PATH
(2)查看man文档:#man -M /usr/local/apache/man httpd
让man httpd生效:
#vim /etc/man.conf
增加:MANPATH /usr/local/apache/man这一项就可以了。
apache的库文件如何让别人访问(如果有的话):
#vim /etc/ld.so.conf.d/apache.conf
将apache的库文件写入此文件中就可以了。
apache的头文件如何输出:
#ln -sv /usr/local/apache/include /usr/include/httpd
(3)2.4.2版本的新特性,可以实现prefork,work和event之间的切换,但是在编译安装时需自己指定。
--enable-mpms-shared=all(编译适合此平台的所有mpm模块)
然后修改配置文件当中的LoadModule指令的内容来设定启用哪个模块。
(4)启动服务:
/usr/local/apache/bin/apacheacl start
配置文件的各种意义(/etc/httpd):
extra:相当于rmp安装时的/etc/httpd/conf.d
httpd.conf:主配置文件
original:存放默认配置文件,即不指定./configurec参数时的默认配置文件存放位置。
验证服务器是否能运行(以虚拟主机为例):
1、实现虚拟主机的功能:
(1)关闭DocumentRoot 选项
(2)开启#Virtual host下面一行。
Include /etc/httpd/extra/httpd-vhosts.conf
(3)修改extra目录中的httpd-vhosts.conf文件。
ServerName
DocumentRoot /web/vhost/www
options Indexes
AllowOverride none
Require all granted
2、查看server status的功能(注意此项功能应该受到限制,一般不让普通用户访问):
(1)修改主配置文件#vim /etc/httpd/httpd.conf
将开启第460行:Include /etc/httpd/extra/httpd-info.conf
(2)修改extra/httpd-info.conf配置文件
SetHandler server-status
Require ip 192.168
这样192.168网段就可一查看服务器的状态信息了(在浏览器中输入:)
3、将服务做成service httpd start/restart/stop 形式进行启动。
方法一:将启动命令/usr/local/apache/bin/apachectl start写入到文件/etc/rc.local中
但是这种方法属于非干净的关闭。
方法二:提供服务脚本(用其他主机上的/etc/rc.d/文件中的httpd文件拷过来进行修改)
#vim httpd(修改脚本中的内容)
apachectl=/usr/local/apache/bin/apachectl(指定apachectl的路径)
httpd=${HTTPD-/usr/local/apache/bin/httpd}(指定httpd文件的路径)
pidfile=${PIDFILE-/var/run/httpd.pid} (这一项很重要,任何一个服务都有一个pid文件,可以在服务的主配置文件中指定)
#vim /etc/httpd/httpd.conf
加入:pidfile “/var/run/httpd.pid”这一选项。
重启服务:#apacheacl restart
#cp httpd /etc/rc.d/init.d
#chkconfig --add httpd
#chkconfig --list httpd
#chmod +x /etc/rc.d/init.d/httpd(一定要给httpd执行权限)
三、mysql的绿色版安装
1、mysql的准备工作
下载地址:中下载。
要求:必须解压到/usr/local目录下且必须命名为mysql,且必须以mysql用户运行。
#useradd -r mysql
#tar xf mysql-5.5.24-linux2.6-i686.tar.gz -C /usr/local
#cd /usr/local
#ln -sv mysql-5.5.24-linux2.6.-i686.tar.gz -C mysql(将其命名为mysql)
#cd mysql
#chown -R mysql:mysql .(将mysql中的所有文件改为mysql属主属主)
安装完mysql之后,要向mysql存放数据,由于mysql中的数据是不断增加的,所以最好将其放在一个独立的设备中,所以先创建一个逻辑卷:
先分区;
#pvcreate /dev/sda5
#vggreate myvg /dev/sda5
#lvcreate -L +5G -n mydata myvg
#mke2fs -j -L MYDATA /dev/myvg/mydata
#vim /etc/fstab(开机自动挂载,在此将其挂载到/data中)
为了数据方便管理在/data中建立一个目录mysql的目录。
#chown mysql:mysql /data/mysql/(将目录mysql的属主属组改为mysql)
2、mysql的初始化
#cd /usr/local/mysql
#scripts/mysql_install_db --help (查看初始化选项)
#scripts/mysql_install_db --datadir=/data/mysql/ --user=mysql(在/data/mysql 目录中生三个数据库)
3、准备mysql的配置文件。
mysql的配置文件默认是my.cnf(mysql启动时需读自己的配置文件,默认情况下,
它会去 /etc/my.cnf /etc/mysql/cnf中找,所以将mysql的配置文件拷贝到/etc/my.cnf中)
#ls /usr/local/mysql/support-files/(此目录提供了所有的配置文件)
#cp /usr/local/mysql/my-large.cnf /etc/my.cnf
#vim /etc/my.cnf(让mysql知道数据文件的存放位置)
在[mysqld]选项下面添加:datadir=/data/mysql
4、设置启动mysql。
#cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
#chkconfig --add mysqld
#chkconfig --list mysqld
#chown -R root .(为了安全,将当前目录中的所有文件都改为root)
#service mysqld start(就可以启动服务了)
5、启用mysql命令
#vim /etc/profile
在此文件中加入PATH=/usr/local/mysql/bin:$PATH
#export PATH=/usr/local/mysqld/bin:$PATH
#mysql (进入mysql配置页面)
6、man命令
#vim /etc/man.conf
在此文件中添加MANPATH=/user/local/mysql/man
7、将mysql的库文件导出
#vim /etc/ld.so.conf.d/mysql.conf(在/etc/ld.so.conf.d目录中创建mysql的配置文件,
目的是让系统找到mysql的库文件)
向文件中添加mysql库文件的路径:/usr/local/mysql/lib
#ldconfig(通知系统重读一下/etc/ld.so.cache文件,因为此件系统初始化时就已经配置好了,所以不包含/etc/ld.so.conf.d/mysql.conf中的内容,必须让系统重读一下文件)
#ldconfig -v (可以将库文件输出一下)
#ldconfig -v | grep mysql (查看mysql)
8、将mysql的头文件导出
#ln -sv /usr/local/mysql/include /usr/include/mysql(这样就可以了)
四、PHP的编译安装
php使用5.4的版本那么xcache必须使用2.0以上的版本
1、解决一类关系
请配置好yum源(可以是本地系统光盘)后执行如下命令:
# yum -y groupinstall "X Software Development"
如果想让编译的php支持mcrypt扩展,此处还需要下载如下两个rpm包并安装之:
libmcrypt-2.5.7-5.el5.i386.rpm
libmcrypt-devel-2.5.7-5.el5.i386.rpm
2、编译安装php-5.4.4
首先下载源码包至本地目录。
# tar xf php-5.4.4.tar.bz2
# cd php-5.3.14
# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl
--with-mysqli=/usr/local/mysql/bin/mysql_config(mysql的config接口) --enable-mbstring
--with-freetype-dir (与字体类型和图形有关的内容)
--with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml
--with-apxs2=/usr/local/apache/bin/apxs(将php做成apache的模块) --with-mcrypt
--with-config-file-path=/etc
--with-config-file-scan-dir=/etc/php.d --with-bz2
# make
# make test
# make intall
3、编辑php.ini,让apache与php整合起来
(1)#cd php-5.4.4
#cp php.ini-production /etc/php.ini
(2)vim /etc/httpd/httpd.conf(修改apache的配置文件)
查看 LoadModule模块,看看是否识别php的模块
修改DirectoryIndex index.php index.html(加上index.php文件,目的是让apache识别php格式文件)
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .php (添加让apache服务器识别php类型)
4、php加速器XCahe的安装
# tar xf xcache-2.0.0.tar.gz
# cd xcache-2.0.0
# /usr/local/php/bin/phpize(让php识别一下此模块扩展)
# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
# make && make install
安装结束时,会出现类似如下行:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/
5、编辑php.ini,整合php和xcache:
首先将xcache提供的样例配置导入php.ini
# mkdir /etc/php.d
# cp xcache.ini /etc/php.d
接下来编辑/etc/php.d/xcache.ini,找到zend_extension开头的行,修改为如下行:
zend_extension = /usr/local/php/lib/php/extensions/no-debug-zts-20100525/xcache.so
注意:如果php.ini文件中有多条zend_extension指令行,要确保此新增的行排在第一位。
阅读(6953) | 评论(0) | 转发(1) |