CentOS 6.5 部署 Apache-2.4.10 + PHP-5.6.3 + MySQL-5.1.73 + Magento-1.9.1.0


一、简介:

1. CentOS:

CentOS,全称Community Enterprise Operating System,中文名为社区企业操作系统。是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。每个版本的CentOS都会获得十年的支持。新版本的CentOS大约每两年发行一次,而每个版本的CentOS会定期更新一次,以便支持新的硬件。

低版本 CentOS 安装方式可参考《centos安装mysql客户端

2. yum:

yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

3. -y:

不再提出是否继续运行或同意与否等,都默认以同意执行。

4. make:

无论是在linux还是在Unix环境中,make都是一个非常重要的编译命令。Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make工具就可以简洁明快地理顺各个源文件之间纷繁复杂的相互关系。而且如此多的源文件,如果每次都要键入gcc命令进行编译的话,那对程序员来说简直就是一场灾难。而make工具则可自动完成编译工作,并且可以只对程序员在上次编译后修改过的部分进行编译。因此,有效的利用make工具可以大大提高项目开发的效率。

5. configure:

Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。

6. –prefix:

–prefix 是配置安装的路径。如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share。

7. –with:

–with指的是安装本文件所依赖的库文件名及路径。

8. –enable-mods-shared:

启用所有支持的动态加载模块。

9. gcc:

GCC 的意思是GNU C Compiler。经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言;它现在还支持 Ada 语言、C++ 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言,以及支持函数式编程和逻辑编程的 Mercury 语言,等等。而 GCC 也不再单只是 GNU C 语言编译器的意思了,而是变成了 GNU Compiler Collection 也即是 GNU 编译器家族的意思了。另一方面,说到 GCC 对于操作系统平台及硬件平台支持,概括起来就是一句话:无所不在。

10. c++:

C++是在C语言的基础上开发的一种集面向对象编程、泛型编程和过程化编程于一体的编程语言。应用较为广泛,是一种静态数据类型检查的,支持多重编程的通用程序设计语言。它支持过程化程序设计,数据抽象,面向对象设计,制作图标等多种程序设计风格。

11. g++:

gcc & g++现在是gnu中最主要和最流行的c & c++编译器 。g++是c++的命令,以.cpp为主,对于c语言后缀名一般为.c。这时候命令换做gcc即可。其实是无关紧要的。其实编译器是根据gcc还是g++来确定是按照C标准还是C++标准编译链接。gcc/g++在执行编译工作的时候,总共需要4步:

  1. 预处理,生成.i的文件[预处理器cpp]
  2. 将预处理后的文件转换成汇编语言,生成文件.s[编译器egcs]
  3. 由汇编变为目标代码(机器代码)生成.o的文件[汇编器as]
  4. 连接目标代码,生成可执行程序[链接器ld]

12. apr:

APR(Apache portable Run-time libraries,Apache可移植运行库),其目的如其名称一样,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。

13. pcre:

PCRE(Perl Compatible Regular Expressions中文含义:perl语言兼容正则表达式)是一个用C语言编写的正则表达式函数库。PCRE是一个轻量级的函数库,比Boost之类的正则表达式库小得多。PCRE十分易用,同时功能也很强大,性能超过了POSIX正则表达式库和一些经典的正则表达式库。PCRE被广泛使用在许多开源软件之中,最著名的莫过于Apache HTTP服务器和PHP脚本语言、R脚本语言,此外,正如从其名字所能看到的,PCRE也是perl语言的缺省正则库。

14. Apache:

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器(web服务器),可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。Apacheweb服务器软件拥有以下特性:

  • A.支持最新的HTTP/1.1通信协议
  • B.拥有简单而强有力的基于文件的配置过程
  • C.支持通用网关接口
  • D.支持基于IP和基于域名的虚拟主机
  • E.支持多种方式的HTTP认证
  • F.集成Perl处理模块
  • G.集成代理服务器模块
  • H.支持实时监视服务器状态和定制服务器日志
  • I.支持服务器端包含指令(SSI)
  • J.支持安全Socket层(SSL)
  • K.提供用户会话过程的跟踪
  • L.支持FastCGI
  • M.通过第三方模块可以支持JavaServlets

15. libxml:

libxml是一个用来解析XML文档的函数库。它用C语言写成, 并且能为多种语言所调用,例如C语言,C++,XSH。C#, Python,Kylix/Delphi,Ruby,和PHP等。Perl中也可以使用XML::LibXML模块。它最初是为GNOME开发的项目,但现在可以用在各种各样的方面。libXML 代码可移植性非常好,因为它基于标准的ANSI C库, 并采用MIT许可证。

16. PHP:

PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

17. MySQL:

MySQL(通常被读作My-SEQuel)是一个开放源码的关联式数据库管理系统。现已成为甲骨文公司(Oracle)旗下产品。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。

18. Magento:

Magento是一款新的专业开源电子商务平台,Magento电子商务平台采用php进行开发,使用ZendFramwork框架。Magento设计得非常灵活,具有模块化架构体系和丰富的功能。易于与第三方应用系统无缝集成。在设计上,包含相当全面,以模块化架构体系,让应用组合变得相当灵活,功能也相当丰富。

二、安装 make

yum -y install make

三、安装 c++ 编译环境

yum -y install gcc-c++

四、安装 g++

安装 g++ 编译环境:

yum -y install gcc-g++

五、安装 apr(apr-1.5.1.tar.gz):

1. 下载:

    http://mirror.bjtu.edu.cn/apache/apr/apr-1.5.1.tar.gz

或使用shell下载:

    wget http://mirror.bjtu.edu.cn/apache/apr/apr-1.5.1.tar.gz

2. 解压:

    tar zxf apr-1.5.1.tar.gz

3. 进入apr文件目录:

    cd apr-1.5.1

4. 配置:

    ./configure --prefix=/usr/local/apr-1.5.1

如出现 “cannot remove `libtoolT’: No such file or directory” ,找到apr目录下configure,打开此文件,搜索 “RM=’$RM’” 改为 “RM=’$RM -f’” ,保存退出,重新配置即可

5. 编译并安装:

    make && make install

六、安装 apr-util(apr-util-1.5.4.tar.gz):

1. 下载:

    http://mirror.bjtu.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

或使用shell下载:

    wget http://mirror.bjtu.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

2. 解压:

    tar zxf apr-util-1.5.4.tar.gz

3. 进入apr-util文件目录:

    cd apr-util-1.5.4

4. 配置:

    ./configure --prefix=/usr/local/apr-util-1.5.4 --with-apr=/usr/local/apr-1.5.1/

5. 编译并安装:

    make && make install

七、安装pcre(pcre-8.36.tar.gz):

1. 下载:

    http://sourceforge.net/projects/pcre/files/pcre/8.36/pcre-8.36.tar.gz/download

或使用shell下载:

    wget http://sourceforge.net/projects/pcre/files/pcre/8.36/pcre-8.36.tar.gz/download

2. 解压:

    tar zxf pcre-8.36.tar.gz

3. 进入pcre文件目录:

    cd pcre-8.36

4. 配置:

    ./configure

5. 编译并安装:

    make && make install

八、安装apache(httpd-2.4.10.tar.gz):

一定要先安装以上文件,否则将不能编译!

1.下载:

    http://mirror.bjtu.edu.cn/apache/httpd/httpd-2.4.10.tar.gz

或使用shell下载:

    wget http://mirror.bjtu.edu.cn/apache/httpd/httpd-2.4.10.tar.gz

2. 解压:

    tar zxf apache-2.4.10.tar.gz

3. 进入apache文件目录:

    cd httpd-2.4.10

4. 配置:

    ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr-1.5.1/ --with-apr-util=/usr/local/apr-util-1.5.4/ --enable-so --enable-rewrite --enable-module=so

5. 编译并安装:

    make && make install

6. 启动:

    /usr/local/apache/bin/apachectl start

    /usr/local/apache/bin/httpd

7. 修改配置文件(满足最基本的配置):

a) 编辑 /usr/local/apache/conf/httpd.conf 文件,找到:

    AddType  application/x-compress .Z
    AddType application/x-gzip .gz .tgz

在后面添加:

    AddType application/x-httpd-php .php      //使Apcche支持PHP
    AddType application/x-httpd-php-source .php5   

b) 找到:

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

添加:

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

c) 找到:

    #ServerName www.example.com:80

修改为:

    ServerName 127.0.0.1:80 或者 ServerName localhost:80

记得去掉前面的“#”

8. 关闭防火墙:

    service iptables stop

9. 重启apache:

    /usr/local/apache/bin/apachectl restart

10. 测试:

在浏览器里输入 http://127.0.0.1 ,如果出现 It Works! ,说明成功。

11. 其他说明:

  • a). 如果采用RPM包安装,安装路径应在 /etc/httpd目录下
  • b). apache配置文件:/etc/httpd/conf/httpd.conf
  • c). Apache模块路径:/usr/sbin/apachectl
  • d). web目录:/var/www/html
  • e). 如果采用源代码安装,一般默认安装在/usr/local/apache2目录下

九、安装libxml2:

1. 下载并安装:

    http://down1.chinaunix.net/distfiles/libxml2-2.7.8.tar.gz

2. 解压:

    tar zxf libxml2-2.7.8.tar.gz

3. 进入libxml2文件目录:

    cd libxml2-2.7.8

4. 配置:

    ./configure --prefix=/usr/local/libxml2 

如出现 “cannot remove `libtoolT’: No such file or directory” ,找到libxml2目录下configure,打开此文件,搜索 “RM=’$RM’” 改为 “RM=’$RM -f’” ,保存退出,重新配置即可

5. 安装并编译:

    make && make install

看到错误信息“cannot remove `libtoolT””: No such file or directory”,进入configure

    vi configure

删除:

    ¥RM "¥cfgfile" 

再重新执行第4步

十、 安装PHP扩展:

下载安装所需扩展:

yum install libxml2 libxml2-devel curl curl-devel libjpeg libjpeg-devel libpng 
libpng-devel libmcrypt libmcrypt-devel libtool-ltdl-devel php-mysql 
php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

十一、安装PHP(php-5.6.3.tar.gz):

1. 下载:

    http://php.net/downloads.php

2. 解压:

    tar zxf php-5.6.3.tar.gz

3. 进入php文件目录:

    cd php-5.6.3

4. 配置:

./configure --prefix=/usr/local/php -with-apxs2=/usr/local/apache/bin/apxs
--with-curl --with-mcrypt --enable-mbstring --with-iconv --with-gd
-with-jpeg-dir=/usr/local/lib --enable-pdo --with-pdo-mysql=mysqlnd
--with-mysqli=mysqlnd --with-mysql=mysqlnd

5. 编译并安装:

    make && make install

6. 修改index主页:

a) 进入apache的 web 目录:cd /usr/local/apache/htdocs

b) 修改index.html 为 index.php

c) 修改index.php内容使用

vi /htdocs/index.php

打开index.php文件,输入i,开始编辑,删除现有内容,改为

<?php phpinfo(); ?>

d) 保存退出:

修改成功后按Esc退出编辑,shift+:输入命令,wq为保存

7. 重启apache:

    /usr/local/apache/bin/apachectl restart

8. 拷贝php配置文件:

    cp php.ini-development /usr/local/php5/lib/php/php.ini

9. 修改php.ini:

    vi /opt/php/lib/php.ini

把include_path前面的分号删除,改成include_path = “/usr/local/php5/lib/php/”

10. 修改httpd.conf:

在最下面加入一行

    AddHandler application/x-httpd-php .php

11. 重启apache:

     /usr/local/apache/bin/apachectl restart

12. 测试:

打开浏览器,访问 http://ip[端口号]/,看到刚才添加的扩展都显示出来了,表示php及其所需扩展安装成功

十二、安装MySQL并实现远程连接:

1. 下载并安装:

   yum -y install mysql mysql-server

2. 启动服务:

    service mysqld start

3. 登陆,密码为空:

    mysql -u root -p

4. 创建用户(针对远程连接):

     insert into mysql.user(Host,User,Password) values("%","testUser","123456");

5. 刷新系统权限表:

    flush privileges;

这样就创建了一个名为:testUser,密码为:123456的用户。

6. 创建数据库:

    create database testDB;

7. 授权testUser用户拥有testDB数据库的所有权限,并使用密码:

    grant all privileges on testDB.* to testUser@% identified by '123456';

8. 刷新系统权限表:

    flush privileges;

9. 关闭防火墙:

    service iptables stop  

10. 连接远程MySQL:

    mysql -u testUser -p -h 192.168.0.34

密码是刚才设置的123456

十三、安装 Magento:

1. 下载:

   http://www.magentocommerce.com/download/ 

2. 将文件拷贝到web文件夹下:

3. 解压:

    tar zxf magento-1.9.1.0.tar.gz

4. 安装:

在浏览器访问 http://ip[端口号]/magento 出现安装界面,按提示进行安装