1.首先配齐编译所需工具安装。
yum install make gcc gcc-c++ php-devel openssl-devel libtool curl-devel
2.关闭SELinux。
vim /etc/sysconfig/selinux
改变SELINUX值为disabled
3.关闭防火墙
chkconfig iptables off
4.批量解压缩环境搭建所需源码包
#创建批量解压缩脚本tar_all.sh
mkdir /usr/local/source
vim /usr/local/source /tar_all.sh
cd /usr/local/source
ls *.tar.gz > ls.list
for TAR in `cat ls.list`
do
tar -zxf $TAR
done
#批量执行显示执行过程
sh -x /usr/local/sh/tar_all.sh
5.逐步安装环境源码包(注意安装顺序和路径)
#1.libxml的安装
cd /usr/local/source/libxml2-2.6.30
./configure --prefix=/usr/local/libxml2
make
make install
#2.libmcrypt的安装(指定安装路径)
cd /usr/local/source/libmcrypt-2.5.8
./configure --prefix=/usr/local/libmcrypt
make
make install
#3.libltdl的安装(默认安装路径)
cd /usr/local/source/libmcrypt-2.5.8/libltdl
./configure --enable-ltdl-install
make
make install
#4.zlib的安装(默认安装路径)
cd /usr/local/source/zlib-1.2.3
./configure
make
make install
#5.libpng的安装(指定安装路径)
cd /usr/local/source/libpng-1.2.31
./configure --prefix=/usr/local/libpng
make
make install
#6.jpeg的安装(指定安装路径并创建安装目录)
mkdir /usr/local/jpeg6
mkdir /usr/local/jpeg6/bin
mkdir /usr/local/jpeg6/lib
mkdir /usr/local/jpeg6/include
mkdir -p /usr/local/jpeg6/man/man1
cd /usr/local/source/jpeg-6b
#如果报错make: ./libtool: Command not found
./configure --prefix=/usr/local/jpeg6 --enable-shared --enable-static
make
make install
#7.freetype的安装(指定安装路径)
cd /usr/local/source/freetype-2.3.5
./configure --prefix=/usr/local/freetype
make
make install
#8.autoconf的安装(默认安装路径)
cd /usr/local/source/autoconf-2.61
./configure
make
make install
#9.gd库的安装(指定安装路径)
cd /usr/local/source/gd-2.0.35
./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6 --with-freetype=/usr/local/freetype --with-png=/usr/local/libpng
make
make install
6.LAMP三大金刚“A+M+P”安装搭建。
#首先是Apache的安装(指定安装路径并配置选项)
cd /usr/local/source/httpd-2.2.9
./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd --enable-modules=most
make
make install
#启动Apache
/usr/local/apache2/bin/apachectl start
#加入开机自启动
echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.sysinit
#其次Mysql的安装(指定安装路径配置并分配权限)
#Mysql安装必备组件ncurses安装
cd /home/source/ncurses-5.6
./configure --with-shared --without-debug --without-ada --enable-overwrite
make
make install
#正式安装开始
groupadd mysql
useradd -g mysql mysql
cd /home/source/mysql-5.0.41
./configure --prefix=/usr/local/mysql --with-extra-charsets=all
make
make install
#配置并分配权限
cp support-files/my-medium.cnf /etc/my.cnf
/usr/local/mysql/bin/mysql_install_db --user=mysql
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var
chgrp -R mysql /usr/local/mysql
#安全启动Mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
#加入开机自启动
cp /home/source/mysql-5.0.41/support-files/mysql.server /etc/rc.d/init.d/mysqld
chown root.root /etc/rc.d/init.d/mysqld
chmod 755 /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig --list mysqld
chkconfig --levels 245 mysqld off
#为root用户添加密码增加安全性
/usr/local/mysql/bin/mysql -u root
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
#最后PHP安装(指定安装路径并转移配置文件)
#如果报错error while loading shared libraries: libltdl.so.3
yum install libtool-libs
yum install libtool-ltdl-devel
#php主文件的编译安装
cd /usr/local/source/php-5.2.6
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-libxml-dir=/usr/local/libxml2 --with-jpeg-dir=/usr/local/jpeg6 --with-freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd2 --with-mcrypt=/usr/local/libmcrypt --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets
make
make install
#转移配置文件并让apache解析
cp php.ini-dist /usr/local/php/etc/php.ini
echo "AddType application/x-httpd-php .php .phtml" >> /etc/httpd/httpd.conf
/usr/local/apache2/bin/apachectl restart
7.LAMP环境拓展安装
#php加速器ZendOptimizer的安装
cd /home/source/ZendOptimizer-3.2.6-linux-glibc21-i386
#若为64位系统则先安装libGL64位库
yum install mesa-libGL.i686
#然后就是类似windows软件安装
./install #特别注意选项中php.ini的路径(自己的安装实际存放位置)
#PhpMyAdmin的安装
cd /home/source
cp -a phpMyAdmin-3.0.0-rc1-all-languages /usr/local/apache2/htdocs/phpmyadmin
cd /usr/local/apache2/htdocs/phpmyadmin
cp config.sample.inc.php config.inc.php
#/auth_type 查找到相应的选项并修改其值为'http'
memcache http://www.cnblogs.com/yjf512/archive/2011/05/01/2033761.html
8.懒人一键环境搭配安装(注意因linux版本和软件包版本不同会有所改变)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
#懒人一键大法(默认32位系统,64位有注释解决方法)
cd
/home/source
ls
*.
tar
.gz >
ls
.list
for
TAR
in
`
cat
ls
.list`
do
tar
-zxf $TAR
done
cd
/home/source/libxml2-2
.6.30
.
/configure
--prefix=
/usr/local/libxml2/
make
&&
make
install
cd
/home/source/libmcrypt-2
.5.8
.
/configure
--prefix=
/usr/local/libmcrypt/
make
&&
make
install
cd
/home/source/libmcrypt-2
.5.8
/libltdl
.
/configure
--
enable
-ltdl-
install
make
&&
make
install
cd
/home/source/zlib-1
.2.3
.
/configure
make
&&
make
install
cd
/home/source/libpng-1
.2.31
.
/configure
--prefix=
/usr/local/libpng/
make
&&
make
install
mkdir
/usr/local/jpeg6
mkdir
/usr/local/jpeg6/bin
mkdir
/usr/local/jpeg6/lib
mkdir
/usr/local/jpeg6/include
mkdir
-p
/usr/local/jpeg6/man/man1
cd
/home/source/jpeg-6b
#(64位)如果报错make: ./libtool: Command not found
#cp /usr/share/libtool/config.sub .
#cp /usr/share/libtool/config.guess .
.
/configure
--prefix=
/usr/local/jpeg6/
--
enable
-shared --
enable
-static
make
&&
make
install
cd
/home/source/freetype-2
.3.5
.
/configure
--prefix=
/usr/local/freetype/
make
&&
make
install
cd
/home/source/autoconf-2
.61
.
/configure
make
&&
make
install
cd
/home/source/gd-2
.0.35
.
/configure
--prefix=
/usr/local/gd2/
--with-jpeg=
/usr/local/jpeg6/
--with-freetype=
/usr/local/freetype/
make
&&
make
install
cd
/home/source/httpd-2
.2.9
.
/configure
--prefix=
/usr/local/apache2/
--sysconfdir=
/etc/httpd/
--
enable
-modules=most
make
&&
make
install
/usr/local/apache2/bin/apachectl
start
echo
"/usr/local/apache2/bin/apachectl start"
>>
/etc/rc
.d
/rc
.sysinit
cd
/home/source/ncurses-5
.6
.
/configure
--with-shared --without-debug --without-ada --
enable
-overwrite
make
&&
make
install
groupadd mysql
useradd
-g mysql mysql
cd
/home/source/mysql-5
.0.41
.
/configure
--prefix=
/usr/local/mysql/
--with-extra-charsets=all
make
&&
make
install
cp
support-files
/my-medium
.cnf
/etc/my
.cnf
/usr/local/mysql/bin/mysql_install_db
--user=mysql
chown
-R root
/usr/local/mysql
chown
-R mysql
/usr/local/mysql/var
chgrp
-R mysql
/usr/local/mysql
/usr/local/mysql/bin/mysqld_safe
--user=mysql &
cp
/home/source/mysql-5
.0.41
/support-files/mysql
.server
/etc/rc
.d
/init
.d
/mysqld
chown
root.root
/etc/rc
.d
/init
.d
/mysqld
chmod
755
/etc/rc
.d
/init
.d
/mysqld
chkconfig --add mysqld
chkconfig --list mysqld
chkconfig --levels 245 mysqld off
yum
install
libtool-libs
yum
install
libtool-ltdl-devel
cd
/home/source/php-5
.2.6
.
/configure
--prefix=
/usr/local/php/
--with-config-
file
-path=
/usr/local/php/etc/
--with-apxs2=
/usr/local/apache2/bin/apxs
--with-mysql=
/usr/local/
mysql/ --with-libxml-
dir
=
/usr/local/libxml2/
--with-jpeg-
dir
=
/usr/local/jpeg6/
--with-freetype-
dir
=
/usr/local/freetype/
--with-gd=
/usr/local/gd2/
--with-mcrypt=
/usr/local/libmcrypt/
--with-mysqli=
/usr/local/mysql/bin/mysql_config
--
enable
-soap --
enable
-mbstring=all --
enable
-sockets
make
&&
make
install
cp
php.ini-dist
/usr/local/php/etc/php
.ini
echo
"AddType application/x-httpd-php .php .phtml"
>>
/etc/httpd/httpd
.conf
/usr/local/apache2/bin/apachectl
restart
|
下载zlib-1.2.3.tar.gz放在/usr/local目录下执行以下命令:
tar -zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure
vi Makefile
找到 CFLAGS=-O3 -DUSE_MMAP
在后面加入-fPIC,即变成CFLAGS=-O3 -DUSE_MMAP -fPIC
make && make install
启动nginx时,提示:error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
解决方法:
32位系统 [root@sever lib]# ln -s /usr/local/lib/libpcre.so.1 /lib
64位系统 [root@sever lib]# ln -s /usr/local/lib/libpcre.so.1 /lib64