LAMP--Linux+Apache(httpd)+MySQL+PHP,是常用的web服务器架构,下面接受编译安装的过程,以及出现的错误。
注意事项:
1. 扩展epel源:参照:http://www.cnblogs.com/llius/p/5105051.html
2. php放到mysql和httpd后面安装,因为编译时候依赖两者的路径
3. 防火墙关闭:iptables -F --> service iptables save (centos7不支持save);vim /etc/selinux/config: SELINUX=enforcing --> SELINUX=disabled --> reboot
试验环境:
CentOS_6.6 64位 && CentOS_7.0 64位 亲测有效!!!
三软件版本(虽然版本比较旧,对练手来说是比较好的):
httpd-2.2.24.tar.bz2
mysql-5.1.73-linux-x86_64-glibc23.tar.gz //免编包,mysql太大,编译很费时间,可以选择免编包
php-5.4.44.tar.bz2
扩展库资源,部分包需要扩展epel源:
yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel openssl openssl-devel openldap openldap-devel openldap-clients openldap-servers libmcrypt libmcrypt-devel libaio libaio-devel openssl*
一、mysql的安装:
1. 新环境没有mysql用户,增加一个mysql用户
# useradd -s /sbin/nologin -M mysql //-M: 不生成家目录 -s /sbin/nologin
2. 新建mysql的数据目录,并将所属权给mysql
# mkdir -p /data/mysql # chown -R mysql.mysql !$
3. 下载mysql-5.1.73-linux-x86_64-glibc23.tar.gz,解压,移动重命名,更改属主为mysql
# cd /usr/local/src # wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-x86_64-glibc23.tar.gz # tar -zxvf mysql-5.1.73-linux-x86_64-glibc23.tar.gz # mv mysql-5.1.73-linux-x86_64-glibc23.tar.gz ../mysql # chown -R mysql.mysql !$
4. 初始化 (显示两个OK,说明初始化成功):
# cd /usr/local/mysql # ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql
5. 配置文件复制和编辑:
# cd /usr/local/mysql/support-files # cp mysql.server /etc/init.d/mysqld //启动脚本 # vim !$ //编辑下面参数: basedir=/usr/local/mysql datadir=/data/mysql # cp my-small.cnf /etc/my.cnf //配置文件 # /etc/init.d/mysqld start # ps aux |grep mysqld //有mysqld进程,说明安装成功
二、Apache(httpd)的安装
1. 下载、解压 httpd-2.2.24.tar.bz2:
# cd /usr/local/src/ # wget http://www.lishiming.net/data/attachment/forum/httpd-2.2.24.tar.bz2 # tar -jxvf httpd-2.2.24.tar.bz2 # cd !$
2. 配置编译参数:
./configure --prefix=/usr/local/apache2 --with-included-apr --enable-so \ //对php的扩展有用 --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --with-pcre
3. 编译和安装
# make && make install
三、PHP的安装
1. 下载、解压
# cd /usr/local/src # wget http://cn2.php.net/distributions/php-5.4.44.tar.gz # tar zxvf php-5.4.44.tar.gz
2. 配置编译参数:
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6
3. 编译和安装:
# make && make install
四、Apache中添加php解析
1. 拷贝php配置文件:
# cp /usr/local/src/php-5.4.44/php.ini-production /usr/local/php/etc/php.ini
2. 修改apache配置文件
# vim /usr/local/apache2/conf/httpd.conf 找到: <Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all //Deny --> Allow </Directory> 找到: AddType application/x-gzip .gz .tgz //下面添加: AddType application/x-httpd-php .php 再找到: <IfModule dir_module> DirectoryIndex index.html //在后面添加:index.htm index.php </IfModule> 找到: #ServerName www.example.com:80 //去掉注释,改为:ServerName localhost:80
3.开启httpd服务
# /usr/local/apache2/bin/apachectl -t //显示Syntax OK,说明配置文件没问题 # /usr/local/apache2/bin/apachectl start //启动服务 # ps aux |grep httpd //看有无httpd进程
4. 测试php解析
# cd /usr/local/apache2/htdocs //apache的文件默认目录 # vim index.php //写入如下内容: <?php echo "Hello!" ?> 保存退出
浏览器输入:192.168.220.22\index.php //主机的ip跟php文件名
如果打开的网页中显示Hello!,不弹出下载php的界面,也不显示<?php echo "Hello!" ?>,说明php的解析成功。
原文:http://www.cnblogs.com/llius/p/5119760.html