Linux + Apache + MySQL + PHP环境搭建
友情链接:centos5.5+nginx0.8.54+mysql5.5.8+php5.3.5 最新详细安装手册
搭建环境:CentOs 5.5 +Apache 2.2.17+MySQL5.58+PHP5.35,使用编译安装,关闭防火墙、selinux
所须软件下载:
Apache(httpd)
www.apache.org
PHP
www.php.net
CMAKE
http://www.cmake.org/files/v2.8/cmake-2.8.3.tar.gz
假定安装包都在/tmp目录。
1.使用 yum 程序安装所需开发包
1# yum -y install gcc gcc-c++ compat-gcc-34-g77 flex bison autoconf automake libevent libevent-devel libgcrypt libgcrypt-devel libgpg-error-devel libmcrypt libmcrypt-devel libjpeg libjpeg-devel libpng libpng-devel libidn libidn-devel libtool libtool-ltdl-devel libtiff libtiff-devel libX11 libX11-devel libXpm libXpm-devel libxml2 libxml2-devel libxslt libxslt-devel freetype freetype-devel gd gd-devel gettext gettext-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel mhash mhash-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers pcre-devel pam-devel zlib zlib-devel xorg-x11-proto-devel不多讲出错的问题,安装了这些库文件,基本不会有出错信息了。
2.安装MySQL 5.5.8
Mysql 5.5.8需要cmake编译工具
①安装cmake
1# cd /tmp2# wget http://www.cmake.org/files/v2.8/cmake-2.8.3.tar.gz 3# tar -zxvf cmake-2.8.3.tar.gz4# cd cmake-2.8.35# ./configure6# make7# make install ②编译安装MySQL
先检查是否安装了MySQL
③配置MySQL
添加mysql用户,如果之前安装过mysql已经存在mysql用户,掠过此步
复制mysql配置文件:
1# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf2# vi /etc/my.cnf3(在mysqld下方加入两条参数)4basedir=/usr/local/mysql5datadir=/usr/local/mysql/data6# cd /usr/local/mysql/生成mysql用户数据库和表文件:
01# scripts/mysql_install_db \02--user=mysql \03--basedir=/usr/local/mysql \04--datadir=/usr/local/mysql/data05# chown -R mysql:mysql /usr/local/mysql/data/06# chgrp -R mysql /usr/local/mysql/07# bin/mysqld_safe --user=mysql & //可能会停着不动,按回车就会回到shell08# bin/mysqladmin -u root password 1234567809# bin/mysql -uroot -p1234567810mysql> show databases;把mysql加入到系统服务中
1# cp support-files/mysql.server /etc/init.d/mysqld2# chmod 700 /etc/init.d/mysqld3# chkconfig --add mysqld4# chkconfig --list mysql5# chkconfig mysqld on6# service mysqld start7# ln -s /usr/local/mysql/bin/mysql /usr/sbin //这样可以在任何目录运行mysql命令 3.安装配置Apache
1.编译安装Apache
注意:./configure –help可以查看参数,根据实际需要配置。这里的configure后面跟的目录参数,最后不要跟/,否则有的地方目录会出现//的子目录问题。
# echo $?
显示为:0,表示编译过程中没有错误,显示其它都有错 这一步后面的编译过程都会用到,如果在这出错了,就不要MAKE了。得查找原因。
#make
#make install
2.设置Apache自启动
1# ln -s /usr/local/apache2/bin/apachectl /usr/sbin/2# cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd3# vi /etc/rc.d/init.d/httpd 使用编辑器打开httpd文件,并在第一行#!/bin/sh下增加两行文字如下4 5# chkconfig: 35 70 306# description: Apache然后
1# chkconfig --add httpd ← 将httpd 加入到chkconfig 中2# chkconfig httpd on ← 将httpd 设置为自启动3# chkconfig --list httpd ← 确认httpd 服务状态 4.编译安装PHP
PHP5.3.5的bug,需要安装 autoconf为2.13版本:
php 5.3.0 在默认状态下,已经开始支持 fastcgi了,不用再费劲再写配置参数了,如果写了,会提示错误信息,这个错误也可以忽略。
# make
提示出错
/usr/local/mysql/include/mysql/my_sys.h:964:27: error: mysql/psi/psi.h: No such file or directory
/usr/local/mysql/include/mysql/m_string.h:219:26: error: mysql/plugin.h: No such file or directory
/usr/local/mysql/include/plugin.h:51:28: 错误:mysql/services.h:没有那个文件或目录
/usr/local/mysql/include/services.h:21:39: 错误:mysql/service_my_snprintf.h:没有那个文件或目录
/usr/local/mysql/include/services.h:22:37: 错误:mysql/service_thd_alloc.h:没有那个文件或目录
/usr/local/mysql/include/services.h:23:36: 错误:mysql/service_thd_wait.h:没有那个文件或目录
/usr/local/mysql/include/services.h:24:44: 错误:mysql/service_thread_scheduler.h:没有那个文件或目录
修复MySQL的BUG
# mkdir /usr/local/mysql/include/mysql
# ln -s /usr/local/mysql/include/* /usr/local/mysql/include/mysql
# vi /usr/local/mysql/include/my_sys.h
找到
#include
修改为
#include
# vi /usr/local/mysql/include/m_string.h
找到
#include < mysql/plugin.h>
修改为
#include # vi /usr/local/mysql/include/plugin.h
找到
#include
修改为
#include
# make clean
# make
# make install
# cp /tmp/php-5.3.5/php.ini-production /usr/local/php/etc/php.ini
# vi /usr/local/apache2/conf/httpd.conf
找到,在下面添加两行
AddHandler php5-script .php
AddType text/html .php
# vi /usr/local/apache2/htdocs/test.php
输入
在ie输入主机ip/test.php能看到phpinfo信息。