环境:

CentOS 6.4

MySQL详细安装可参考:http://www.cnblogs.com/yangxia-test/archive/2012/11/12/2766237.html

Apache详细安装可参考:http://www.cnblogs.com/yangxia-test/archive/2012/11/09/2762486.html

一、下载文件

1、php下载地址:http://php.net/downloads.php  版本:php-5.6.3.tar.gz

2、libxml2下载地址:http://download.chinaunix.net/download/0007000/6095.shtml  版本:libxml2-2.7.4.tar.gz

3、apache2下载地址:http://httpd.apache.org/  版本:httpd-2.4.10.tar.gz

4、apr与apr-util下载地址:http://apr.apache.org   版本:apr-1.5.1.tar.gz / apr-util-1.5.4.tar.gz

5、pcre下载地址:http://sourceforge.net/projects/pcre/files/pcre/  版本:pcre-8.36.tar.gz

6、MySQL下载地址:http://dev.mysql.com/downloads/mysql/5.1.73.html  

MySQL-devel-community-5.1.73-1.rhel5.x86_64.rpm

MySQL-client-community-5.1.73-1.rhel5.x86_64.rpm

MySQL-server-community-5.1.73-1.rhel5.x86_64.rpm

下载

二、安装MySQL

1、二进制安装MySQL,步骤如下:

[root@vm15 mysql]# rpm -ivh MySQL-server-community-5.1.73-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-server-community ########################################### [100%]

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h vm15.example.com password 'new-password'

Alternatively you can run:
/usr/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.

See the manual for more instructions.

Please report any problems with the /usr/bin/mysqlbug script!

Starting MySQL.. SUCCESS!
Giving mysqld 2 seconds to start

[root@memcache mysql]# rpm -ivh MySQL-client-community-5.1.73-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-client-community ########################################### [100%]

[root@vm15 mysql]# rpm -ivh MySQL-devel-community-5.1.73-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-devel-community ########################################### [100%]

2、验证安装是否成功

[root@vm15 mysql]# rpm -qa |grep MySQL
MySQL-client-community-5.1.73-1.rhel5.x86_64
MySQL-devel-community-5.1.73-1.rhel5.x86_64
MySQL-server-community-5.1.73-1.rhel5.x86_64

[root@vm15 mysql]# mysql

出现了“mysql>”提示符,恭喜你,安装成功!

三、安装Apache

参考:http://www.cnblogs.com/yangxia-test/archive/2012/11/09/2762486.html

四、安装libxml2

将下载的libxml2-2.7.4.tar.gz文件上传至/usr/local

[root@vm15 local]# mkdir -p libxml2
[root@vm15 local]# tar -zxvf libxml2-2.7.4.tar.gz
[root@vm15 local]# cd libxml2-2.7.4
[root@vm15 libxml2-2.7.4]# ./configure --prefix=/usr/local/libxml2
[root@vm15 libxml2-2.7.4]# make
[root@vm15 libxml2-2.7.4]# make install

如果安装成功以后,在/usr/local/libxml2/目录下将生成bin、include、lib和share四个目录。在后面安装PHP5源代码包的配置时,会通过在configure命令的选项中加上"--with-libxml-dir=/usr/ local/libxml2"选项,用于指定安装libxml2库文件的位置。

五、安装php

将下载的php-5.6.3.tar.gz文件上传至/usr/local

[root@vm15 local]# mkdir -p php
[root@vm15 local]# tar -zxvf php-5.6.3.tar.gz
[root@vm15 local]# cd php-5.6.3
[root@vm15 php-5.6.3]#./configure --prefix=/usr/local/php --with-mysql --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2

出现以下信息表示编译成功

..
checking for external oniguruma... no
checking for mcrypt support... no
checking for MSSQL support via FreeTDS... no
checking for MySQL support... yes
checking for specified location of the MySQL UNIX socket... no
configure: error: Cannot find MySQL header files under /usr/local/mysql.
Note that the MySQL client library is not bundled anymore!

creating libtool
appending configuration tag "CXX" to libtool

Generating files
configure: creating ./config.status
creating main/internal_functions.c
creating main/internal_functions_cli.c
+--------------------------------------------------------------------+
| License: |
| This software is subject to the PHP License, available in this |
| distribution in the file LICENSE. By continuing this installation |
| process, you are bound by the terms of this license agreement. |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point. |
+--------------------------------------------------------------------+

Thank you for using PHP.

config.status: creating php5.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating sapi/cgi/php-cgi.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: executing default commands

[root@vm15 php-5.6.3]#make

[root@vm15 php-5.6.3]#make install

安装成功。

六、配置php

1、配置php.ini,只需要把php-5.6.3安装包中的php.ini-production拷贝到/usr/local/php/lib/下

[root@vm15 php-5.6.3]# cp php.ini-production /usr/local/php/lib/php.ini

2、配置 httpd.conf 让apache支持PHP:

# vi /usr/local/apache/conf/httpd.conf

找到 AddType application/x-gzip .gz .tgz 在其下添加如下内容

  AddType application/x-httpd-php .php      (.前面有空格)

  AddType application/x-httpd-php-source .phps        (.前面有空格)

3、在DirectoryIndex增加 index.php,以便Apache识别PHP格式的index

# vi /usr/local/apache/conf/httpd.conf

<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>

七、重启Apache

[root@vm15 mysql]#  /usr/local/apache2/bin/apachectl start

(一定要重启)

八、测试php是否成功安装

写一个php测试页info.php,放到/usr/local/apache2/htdocs中。

<?php

phpinfo();

?>;

在浏览器中输入:服务器地址/info.php。通过phpinfo()可以查看很多信息,比如php.ini的存放路径,以及所有扩展组件等,很强大。

如果能正常显示出php的信息,则说明Apche+Mysql+PHP安装成功!

九、安装遇到的问题

1、安装MySQL时,报下面的错误:

[root@memcache mysql]# rpm -ivh MySQL-server-community-5.1.73-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
file /usr/share/mysql/charsets/README from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/Index.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/armscii8.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/ascii.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/cp1250.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/cp1251.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/cp1256.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64

解决方法:yum remove mysql-libs-5*

2、configure php时,报错:

Configuring SAPI modules
checking for AOLserver support... no
checking for Apache 1.x module support via DSO through APXS... configure: error: You have enabled Apache 1.3 support while your server is Apache 2. Please use the appropriate switch --with-apxs2

解决方法:./configure --prefix=/usr/local/php --with-mysql  --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2

3、安装apr时,报错rm: cannot remove `libtoolT': No such file or directory

解决方法

直接打开/usr/local/apr-1.5.1/configure 把 $RM“$cfgfile” 那行删除掉
$RM“$cfgfile” 大约在 42302行

[root@vm15 apr-1.5.1]#grep -n RM configure

[root@vm15 apr-1.5.1]#sed -i '/$RM "$cfgfile"/d' configure

然后再重新运行 ./configure --prefix=/usr/local/apr 就可以了.

4、[root@vm15 php-5.6.3]#./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2

..
checking for external oniguruma... no
checking for mcrypt support... no
checking for MSSQL support via FreeTDS... no
checking for MySQL support... yes
checking for specified location of the MySQL UNIX socket... no
configure: error: Cannot find MySQL header files under /usr/local/mysql.
Note that the MySQL client library is not bundled anymore!

解决方法

[root@localhost php-5.5.6]# find / -name mysql.h
/usr/include/mysql/mysql.h

查找到mysql.h文件,我们更改参数为--with-mysql,如果没有的话,请安装mysql-devel包,

Linux搭建PHP+MySQL+Apache环境的更多相关文章

  1. 阿里云上安装mysql步骤/ 阿里云ECS搭建Java+mysql+tomcat环境

    使用阿里云ECS挺长一段时间了.这两天碰巧朋友小白让我一步一步教他在ECS上搭建Java+mysql+tomcat环境,所以把在这里把步骤在这简单整理了一下,以便需要的人查阅. 我购买的阿里云服务器系 ...

  2. 2019.03.03 - Linux搭建go语言交叉环境

    编译GO 1.6版本以上的需要依赖GO 1.4版本的二进制,并且需要把GOROOT_BOOTSTRAP的路径设置为1.4版本GO的根目录,这样它的bin目录就可以直接使用到1.4版本的GO 搭建go语 ...

  3. windows下PHP+Mysql+Apache环境搭建

    Apache版本:httpd-2.2.22-win32-x86-openssl-                   下载地址:http://pan.baidu.com/s/1sjuL4RV PHP版 ...

  4. 在Linux环境下搭建Tomcat+mysql+jdk环境

    按照下面的步骤一步一步来搭建tomcat+jdk+mysql环境.   [Linux环境]------我搭建的是64位centos版本的linux系统 1.下载并安装一个VMware workstat ...

  5. php+mysql+Apache环境搭建

    最近有一个小程序需要用php来跑,记录一下php的环境配置过程. 1.首先在下载集成工具wamp,WAMP是指在Windows服务器上使用Apache.MySQL和PHP的集成安装环境,可以快速安装配 ...

  6. linux下搭建nginx+mysql+apache

    对于开发人员来说,进行Web开发时可以用Apache进行网站测试,然而当一个Web程序进行发布时,Apache中并发性能差就显得很突出,这时配置一台Nginx服务器显得尤为重要. 以下是配置Nginx ...

  7. 在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境

    阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...

  8. (转)在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境

    阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...

  9. Linux下PHP+MYSQL+APACHE配置方法

    apache: http://www.apache.org  mysql: http://www.mysql.com  php: http://www.php.net/downloads.php  g ...

随机推荐

  1. The main concepts

    The MVC application model A Play application follows the MVC architectural pattern applied to the we ...

  2. webservice 的wsdl文件生成客户端java类

    提供两个方法: 第一个: 发布webservice项目后, 地址栏地址  http://localhost:8888/lxitedu.webservice.cxf-ch2/services/userS ...

  3. SAP 锁机制

    SAP锁机制一.SAP为什么要设置锁:   1,保持数据的一致性     如果几个用户要访问同样的资源,需要找到一种同步访问的方法去保持数据的一致性.比如说,在航班预订系 统中,需要检查还有没有空座位 ...

  4. Ieditor

    Interfaces Description IActiveViewEvents (esriCarto) Provides access to events that occur when the s ...

  5. 【原】开发路上疑难BUG调试记录

    之前遇到棘手的BUG总是在处理过后就不管了,导致后面碰到相同问题后重复工作太多.现专门开辟一篇日志以记录接下来一路上比较棘手的“坑”的修复历程: [C++篇] 1.mt.exe : general e ...

  6. 【原/转】opencv的级联分类器训练与分类全程记录

    众所周知,opencv下有自带的供人脸识别以及行人检测的分类器,也就是说已经有现成的xml文件供你用.如果我们不做人脸识别或者行人检测,而是想做点其他的目标检测该怎么做呢?答案自然是自己训练一个特定的 ...

  7. java 接口(interface)

    接口定义:[修饰符] interface 接口名 extends 父接口名1,父接口名2 ...{ } 接口可以说是一种特殊的抽象类.接口只能定义方法,而不能实现方法的实例. 1.接口中能够定义抽象方 ...

  8. Android开发艺术探索学习笔记(十一)

    第十一章  Android的线程和线程池 从用途上来说,线程分为子线程和主线程,主线程主要处理和界面相关的事情,而子线程往往用于执行耗时的操作.AsyncTask,IntentService,Hand ...

  9. Asp.net 页面访问模板页的属性

    首先 页面需要添加下面一段代码 <%@ MasterType VirtualPath="~/User/User.Master" %> 添加的位置如图 这样就可以在这个页 ...

  10. 通过正则获取URL中的参数

    闲着无聊用正则做了一个获取URL参数的小算法^_^ function getParam(name) { var objs = window.location.search.match("(\ ...