# 联网状态下
# 1. [root@localhost ~]# yum check-update
# 2. [root@localhost ~]# yum install httpd mysql-server php php-mysql php-gd -y && service httpd restaart
#sudo -s
#LANG=C
#yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
1、安装Apache
mkdir /usr/local/webserver
tar zxvf httpd-2.2.9.tar.gz
cd httpd-2.2.9
./configure --prefix=/usr/local/webserver/httpd
make
make install
启动apache
/usr/local/webserver/httpd/bin/apachectl start
网页访问:http://IP/
2、编译安装MySQL 5.0.41
#yum install ncurses ncurses-devel 默认在联网情况下
tar zxvf ncurses-5.6.tar.gz
cd ncurses-5.6
./configure --prefix=/usr -with-shared -without-debug
make
make install
/usr/sbin/groupadd mysql //增加mysql组
/usr/sbin/useradd -g mysql mysql //在mysql组下增加mysql帐号
tar zxvf mysql-5.0.41.tar.gz
cd mysql-5.0.41/
./configure --prefix=/usr/local/webserver/mysql/ --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase
make && make install
chmod +w /usr/local/webserver/mysql
chown -R mysql:mysql /usr/local/webserver/mysql
cd ../
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
附:以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下几步。
如果你只是希望让PHP支持MySQL扩展库,能够连接其他服务器上的MySQL数据库,
那么,以下两步无需执行。
①、创建MySQL数据库存放目录
mkdir -p /data0/mysql/3306/data/
mkdir -p /data0/mysql/3306/binlog/
mkdir -p /data0/mysql/3306/relaylog/
chown -R mysql:mysql /data0/mysql/
②、以mysql用户帐号的身份建立数据表:(*)
/usr/local/webserver/mysql/bin/mysql_install_db --basedir=/usr/local/webserver/mysql --datadir=/data0/mysql/3306/data --user=mysql
③、创建my.cnf配置文件:
vi /data0/mysql/3306/my.cnf
内容见相关配置文件my.cnf
④、创建管理MySQL数据库的shell脚本:
vi /data0/mysql/3306/mysql
内容详细信息见相关文件 mysql
⑤、赋予shell脚本可执行权限:
chmod +x /data0/mysql/3306/mysql
⑥、启动MySQL:
/data0/mysql/3306/mysql start (*)
⑦、通过命令行登录管理MySQL服务器(提示输入密码时直接回车):
/usr/local/webserver/mysql/bin/mysql -u root -p -S /tmp/mysql.sock
⑧、输入以下SQL语句,创建一个具有root权限的用户(admin)和密码(12345678):
mysql> DELETE FROM mysql.user WHERE Host='localhost' AND User='';
mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('012345');
⑨、(可选)停止MySQL:
/data0/mysql/3306/mysql stop
3、安装php-5.2.6
tar zxvf libxml2-2.6.30.tar.gz
cd libxml2-2.6.30
./configure --prefix=/usr/local/webserver/libxml2
make && make install
tar zxvf php-5.2.6.tar.gz
cd ./php-5.2.6
./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-apxs2=/usr/local/webserver/httpd/bin/apxs --with-mysql=/usr/local/webserver/mysql/ --with-libxml-dir=/usr/local/webserver/libxml2 --enable-soap --enable-sockets
make && make install
cp php.ini-dist /usr/local/webserver/php/etc/php.ini //创建配置文件
vi /usr/local/webserver/httpd/conf/httpd.conf //使用vi编辑apache配置文件
Addtype application/x-httpd-php .php .phtml #添加这一条
/usr/local/webserver/httpd/bin/apachectl restart
#此时重启的话:
#httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
#原因:是Linux有一个SELinux保护模式引起的
#解决办法:
setup ->Firewall Configuration->SELinux选 Permissive ->ok
#如果用ssh连接工具出现乱码 可以使用AbsoluteTelnet软件连接centos服务器
# 错误提示:httpd: apr_sockaddr_info_get() failed for bogon
# httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
# cd /usr/local/webserver/httpd/conf/
# vi httpd.conf
解决办法: 将httpd.conf中的ServerName 前面的 # 去掉。
vi phpinfo.php
<?php
phpinfo();
?>
/usr/local/webserver/httpd/bin/apachectl restart
4、编译安装PHP5扩展模块
cd /root/soft
(1)安装libmcrypt
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure --prefix=/usr/webserver/local/libmcrypt
make
make install
安装GD2
安装GD2库是为了让PHP5支持GIF、PNG和JPEG图片格式,
所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype和jpegsrc等库文件。
而且中间还会穿插安装一些软件。
cd ..
tar zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure
make
make install
cd ..
tar zxvf libpng-1.2.31.tar.gz
cd libpng-1.2.31
./configure --prefix=/usr/local/libpng
make
make install
cd ..
tar zxvf freetype-2.3.5.tar.gz
cd freetype-2.3.5
./configure --prefix=/usr/local/freetype
make
make install
cd ..
mkdir /usr/local/jpeg6 //建立jpeg6软件安装目录
mkdir /usr/local/jpeg6/bin //建立存放命令的目录
mkdir /usr/local/jpeg6/lib //创建jpeg6库文件所在目录
mkdir /usr/local/jpeg6/include //建立存放头文件目录
mkdir -p /usr/local/jpeg6/man/man1 //建立存放手册的目录
tar zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b/
./configure --prefix=/usr/local/jpeg6 --enable-shared --enable-static
//其中
//注释 --enable-shared \ //建立共享库使用的GNU的libtool
//注释 --enable-static //建立静态库使用的GNU的libtool
make
make install
// #./configure \ //配置命令
//--prefix=/usr/local/gd2/ \ //指定软件安装的位置
//--with-zlib=/usr/local/zlib/ \ //指定到哪去找zlib库文件的位置
//--with-jpeg=/usr/local/jpeg6/ \ //指定到哪去找jpeg库文件的位置
//--with-png=/usr/local/libpng/ \ //指定到哪去找png库文件的位置
//--with-freetype=/usr/local/freetype/ //指定到哪去找freetype 2.x字体库的位置
cd ..
tar zxvf gd-2.0.35.tar.gz
cd gd-2.0.35
./configure --prefix=/usr/local/gd2/ --with-zlib=/usr/local/zlib/ --with-jpeg=/usr/local/jpeg6/ --with-png=/usr/local/libpng/ --with-freetype=/usr/local/freetype/
make
make install
// 重新编译php
cd /root/soft
cd php-5.2.6
./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-apxs2=/usr/local/webserver/httpd/bin/apxs --with-mysql=/usr/local/webserver/mysql/ --with-zlib --with-png-dir=/usr/local/libpng/ --with-libxml-dir=/usr/local/webserver/libxml2 --with-freetype-dir=/usr/local/freetype/ --with-jpeg-dir=/usr/local/jpeg6/ --with-gd=/usr/local/gd2/ --enable-soap --enable-sockets
//--with-mcrypt=/usr/local/libmcrypt
make
make install
//重启apache
/usr/local/webserver/httpd/bin/apachectl restart
// 查看phpinfo相关信息