LAMP是一个缩写,它指一组通常一起使用来运行动态网站或者服务器的开源程序,包括Linux操作系统、Apache网络服务器、Mysql数据库和PHP编程语言。
一.源码编译安装Apache
1.yum安装编译环境
[root@localhost src]# yum install gcc gcc-c++ automake autoconf kernel-devel zlib-devel
2.源码安装Apache
[root@localhost src]#tar xvzf httpd-2.2.8.tar.gz [root@localhost src]#cd httpd-2.2.8 [root@localhost httpd-2.2.8]# ./configure --prefix=/usr/local/apache2 --enable-rewrite --enable-deflate [root@localhost httpd-2.2.8]# make && make install [root@localhost httpd-2.2.8]#cd ..
编译参数说明
--prefix=/usr/local/apache2,指定Apache的安装目录
--enable-rewrite,支持URL重写
--enable-deflate,支持网页压缩
3.建立运行Apache的用户、组
[root@localhost src]# groupadd www [root@localhost src]# useradd -g www www
4.设置网页根目录的权限
[root@localhost src]# mkdir -p /var/www/html [root@localhost src]# chown -R www:www /var/www/html
5.修改Apache的配置文件,指定Apache的安装目录为/var/www/html
[root@localhost src]# vim /usr/local/apache2/conf/httpd.conf
User www Group www DocumentRoot "/var/www/html" <Directory "/var/www/html">
6.开启Apache服务,并设为开机启动
[root@localhost src]# /usr/local/apache2/bin/apachectl start [root@localhost src]# lsof -i:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME httpd 26748 root 3u IPv6 60750 0t0 TCP *:http (LISTEN) httpd 26749 www 3u IPv6 60750 0t0 TCP *:http (LISTEN) httpd 26750 www 3u IPv6 60750 0t0 TCP *:http (LISTEN) httpd 26751 www 3u IPv6 60750 0t0 TCP *:http (LISTEN) httpd 26752 www 3u IPv6 60750 0t0 TCP *:http (LISTEN) httpd 26753 www 3u IPv6 60750 0t0 TCP *:http (LISTEN) [root@localhost src]# echo "/usr/local/apache2/bin/apachectl" >> /etc/rc.local
二.源码编译安装Mysql
1.yum安装编译环境
[root@localhost src]# yum install ncurses-devel libxml2-devel
2.源码安装Mysql
[root@localhost src]# tar xvzf mysql-5.1.47.tar.gz [root@localhost src]# cd mysql-5.1.47 [root@localhost mysql-5.1.47]# ./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-extra-charsets=all --enable-assembler --with-readline --with-big-tables --enable-thread-safe-client --with-plugins=all --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static [root@localhost mysql-5.1.47]# make && make install [root@localhost mysql-5.1.47]# cd ..
编译参数说明
--prefix=/usr/local/mysql,指定Mysql的安装路径
--with-extra-charsets=all,在安装Mysql安装时,安装所有字符集
--enable-assembler,允许使用汇编模式
--with-big-tables,支持大表
--enable-thread-safe-client,以线程方式编译客户端
--with-plugins=all,安装所有插件
--with-mysqld-ldflags=-all-static,静态编译mysql服务器端
--with-client-ldflags=-all-static, 静态编译mysql客户端
3.建立运行Mysql的用户、组
[root@localhost src]# groupadd mysql [root@localhost src]# useradd -g mysql mysql
4.对Mysql进行权限的配置,指定Mysql的数据安装路径为/data/mysql
[root@localhost src]# chown -R mysql:mysql /usr/local/mysql [root@localhost src]# mkdir -p /data/mysql
5.配置Mysql服务
[root@localhost src]# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf [root@localhost src]# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld [root@localhost src]# chmod +x /etc/init.d/mysqld
6.修改/etc/my.cnf,添加Mysql的数据安装路径为/data/mysql
datadir = /data/mysql
7.初始化Mysql,并开启Mysql服务,设为开机启动
[root@localhost src]# mysql_install_db --user=mysql --datadir=/data/mysql [root@localhost src]# service mysqld start Starting MySQL.. [ OK ] [root@localhost src]# chkconfig mysqld on
三.源码编译安装PHP
1.yum安装编译环境
[root@localhost src]# yum install openssl-devel libpng-devel libjpeg-devel gd bzip2-devel glibc-devel curl-dvel freetype-devel file bison patch gettext mlocate flex diffutils readline-devel glib2-devel libcap-devel libmcrypt-devel
2.安装PHP所需的库
1)安装libmcrypt
[root@localhost src]# tar xvzf libmcrypt-2.5.8.tar.gz [root@localhost src]# cd libmcrypt-2.5.8 [root@localhost libmcrypt-2.5.8]# ./configure --prefix=/usr [root@localhost libmcrypt-2.5.8]# make && make install && cd ..
2) 安装mhash
[root@localhost src]# tar xvzf mhash-0.9.9.9.tar.gz [root@localhost src]# cd mhash-0.9.9.9 [root@localhost mhash-0.9.9.9]# ./configure --prefix=/usr [root@localhost mhash-0.9.9.9]# make && make install && cd ..
3)安装mcrypt
[root@localhost src]# tar xvzf mcrypt-2.6.8.tar.gz [root@localhost src]# cd mcrypt-2.6.8 [root@localhost mcrypt-2.6.8]# ./configure [root@localhost mcrypt-2.6.8]#make && make install && cd ..
4) 安装libiconv
[root@localhost src]# tar xvzf libiconv-1.14.tar.gz [root@localhost src]# cd libiconv-1.14 [root@localhost libiconv-1.14]# ./configure --prefix=/usr/local/libiconv [root@localhost libiconv-1.14]# make && make install && cd ..
3.安装PHP
[root@localhost src]# tar xvjf php-5.3.27.tar.bz2 [root@localhost src]# cd php-5.3.27 [root@localhost php-5.3.27]# ./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-apxs2=/usr/local/apache2/bin/apxs --with-openssl --with-zlib --enable-bcmath --with-bz2 --with-gd --enable-gd-native-ttf --with-gettext --with-mhash --enable-mbstring --with-mcrypt --enable-zip --with-iconv=/usr/local/libiconv --with-curl --enable-soap --enable-sockets --enable-ftp --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --without-pear [root@localhost php-5.3.27]# make && make install && cd ..
编译参数说明
--prefix=/usr/local/php,设置php的安装路径
--with-config-file-path=/etc,指定配置文件php.ini的位置
--with-config-file-scan-dir=/etc/php.d,指定额外的ini文件目录
--with-apxs2=/usr/local/apache2/bin/apxs,编译共享的Apache2.0模块
--with-openssl,支持openssl
--with-zlib,支持zlib
--with-bz2,支持bz2
--with-gd,支持gd
--with-gettext,启用gettext支持
--with-mhash,支持mhash
--enable-mbstring,支持多字节字符串
--with-mcrypt,支持mcrypt加密
--enable-zip,支持zip读写
--with-iconv=/usr/local/libiconv,支持iconv
--with-curl,支持curl
--enable-soap,支持soap
--enable-sockets,支持sockets
--enable-ftp,支持ftp
--with-mysql=/usr/local/mysql,启用mysql支持
--with-pdo-mysql=/usr/local/mysql,启用pdo-mysql支持
--without-pear,不支持pear
4.复制配置文件
[root@localhost src]# cp /usr/local/src/php-5.3.27/php.ini-development /etc/php.ini
5.在/usr/local/apache2/conf/httpd.conf文件中加入php文件类型解析
AddType application/x-httpd-php .php
6.重启apache
[root@localhost src]# /usr/local/apache2/bin/apachectl stop [root@localhost src]# /usr/local/apache2/bin/apachectl start
7.在/var/www/html目录下建立index.php,文件内容如下
<?php phpinfo(); ?>
8.在浏览器上运行http://192.168.0.125/index.php,页显示如下