RedHat 9.0 下 搭建 AMP 开发环境

从网站的流量上来说,70% 以上的访问流量是 LAMP 来提供的,LAMP 是目前最强大的网站解决方案。

LAMP 含义不唯一,可以是:Linux + Apache + MySQL/MariaDB + PHP/Perl/Python。

本文主要总结的是在 Linux ( RedHat 系列 ) 下 Apache + MySQL + PHP 环境的搭建步骤。

一、安装 Linux

操作系统是所有应用软件开发的基础。

Linux 的安装已在其他博文中详细介绍过,本文略。本文是在 RedHat 9.0 虚拟机上搭建的 AMP 环境。( 不知道为了什么,有时候就是喜欢赏玩一下旧旧的东西 )

AMP 的安装顺序有什么要求?

由于采用编译安装,所以首先安装 MySQL ,后安装 PHP 和 Apache。

PHP 和 Apache 的安装顺序没有要求。

二、RedHat 9.0下安装 MySQL

图形界面下的点击安装( 略 )和字符界面的命令安装。

RedHat 系列的软件包格式主要有两种: .rpmtar.gz

.rpm 是系统自带的二进制软件包 ( 一般版本都比较旧 ),可直接安装运行:

$ rpm -ivh -软件名称

.tar.gz 是软件源代码,需要编译后才能安装运行。

说明

一般来讲,从源码编译安装更适合本机的运行。

RedHat 9.0 下安装 MySQL 步骤

①查看软件是否已经安装:

$ rpm -qa|grep mysql

如果已经安装则先删除

$ rpm -e mysql --nodeps`

--nodeps 命令选项表示:忽略依赖关系而强制删除软件包。

安装过程会要求 root 权限。

②将下载的 .tar.gz 压缩包拷贝至 home 目录:

$ cp mysql-xxx.tar.gz /home/.

然后解压:

$ tar -zxvf mysql-xxx.tar.gz 
说明

如果不知道软件的具体名字,可以使用 tab 补全软件名。

如果软件源中有相应软件的话,就会被 tab 补全查找到。

具体的文件路径视情况灵活变化。

③将解压出来的文件夹复制到 /usr/local 目录,并更名为 mysql

$ cp -vRp mysql-xxx /usr/local/mysql

④开始配置 MySQL ( 大都是安全配置 )

进入 /usr/local/mysql 目录,以下所有命令都在 /usr/local/mysql 路径下执行:

  • 添加 mysql 组
$ groupadd mysql
  • 添加 mysql 用户
$ useradd -g mysql mysql
  • 初始化 mysql 数据库信息
$ scripts/mysql_install_db --user=mysql

--user=mysql 表示以 mysql 身份初始化 mysql。

如果初始化成功,则在 /data 目录 ( 保存的是数据库 ) 下的 mysql 文件夹就由空变非空,里面存放了许多初始化信息。

  • 更改 /usr/local/mysql 文件夹及其内文件的拥有者
$ chown -R root

. 表示整个当前目录,等价的写法有 ./*

chown 的命令格式是:命令 选项 用户 目录

  • 更改数据库文件夹 /usr/local/mysql/data 的拥有者
$ chown -R mysql data
  • 更改整个当前目录 /usr/local/mysql 其内文件的所属组
$ chgrp -R mysql

⑤启动服务进程并开始使用 MySQL

/usr/local/mysql 目录下输入:

$ bin/mysqld_safe --user=mesql &

不带 & 表示前台运行 mysql,即光标会一直在命令窗口闪动,鼠标也不由控制;

& 表示后台运行 mysql,即要进入 myql 时只需在终端下输入:

$ /usr/local/mysq/bin/mysql -u root -p

输入密码即可进行 MySQL 操作。

三、RedHat 9.0 下安装 Apache

安装步骤同 MySQL 的安装。不同的是 Apache 的源代码包需要编译安装而不是像 MySQL 的安装那样无需编译。

所以 Apache 的安装步骤从解压编译开始讲起:

① 将下载的 Apache 源码包解压,解压后进入解压出来的文件夹,然后开始编译 Apache。

② 编译 Apache

所有的编译软件都有一个 configure 的编译文件。Apache 的编译的命令如下:

$ ./configure --prefix=/usr/local/apache --enable-so
注意

当要在当前目录下直接执行可执行文件时,可执行文件之前那一定要有 ./

--prefix=/usr/local/apache 表示指定了编译结束后将要把软件自动安装到的路径 ( 这步只是编译,编译并没有安装 )。

基本上所有软件的编译都需要使用到 --prefix 参数,并且都表示软件以后将被安装的位置。

--enable-so 表示以动态模块的形式安装,这样在软件出现变化的时候就不需要再重新安装该软件了。

③ 将编译好的软件生成可执行文件

只需在当前路径下输入命令:make

④ 安装 Apache

有了可执行文件之后就可以开始安装了,还是在当前路径下,输入命令:make install

⑤ 启动 apche 服务

$ cd/usr/local/apache
$ bin/apachectl start

⑥ 查看 apache 服务是否启动:netstat -natup

如果有一个占用 80 端口的服务出现,则基本上可以表示 apache 服务以及成功启动。

可以在 apache/hthocs 目录下编写一些测试网页,再到浏览器地址栏上输入 http://localhost/test.html,来测试 apache 服务器是否已经安装成功。

四、RedHat 9.0 下安装 PHP

安装步骤基本与 Apache 的安装相同。唯一不同的就是 --prefix 选项所指定的路径。php 编译指令为:

$ ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql

其中:

  • --with-aspx2=/usr/local/apache/bin/apxs

代表将 php 和 Apache整合到一起,即让 Apache 能够调用 php 模块进行网站开发。

  • aspx2 中的 2

代表 Apache 的版本,如果是 1.x 版本的话就可以不写数字。

  • --with-mysql=/usr/local/mysql

代表将 MySQL 和 php 整合到一起,即让 php 打开 MySQL 扩展卡以便与 MySQL 连接。

如何查看 php 是否编译成功?

如果 php 编译成功,则在 /apache/modules 目录下会有个 libphp5.so 文件出现,否则之前的编译是失败的。

说明

.so 文件类似于 Windows 下的 .dll 文件。

五、配置 Apache 和 PHP

  • 配置 httpd.conf

在 Apache 配置文件 httpd.conf 大约 309 行后面加入一行:AddType application/x-httpd-php .php

具体多少行可以用 vi 在末行模式下快速定位:/AddType

然后重启 Apache:

/usr/local/apache/bin/apchectl restart

测试 Apache 是否已经可以调用 php 引擎可以写段 php 测试代码:

1
2
3
4
5
<?php

	echo printinfo() ; 

?>

如果浏览器中打印出 php 的相关信息,则说明 Apache 已经成功启用 PHP。

  • 配置 php.ini

进入到 php 解压出来的源代码文件夹将其中的 php.ini.dist 文件复制并重命名为 php.ini/usr/local/php/lib 目录:

$ cp php.ini.dist /usr/local/php/lib/php.ini

其他问题

  • Linux 下的命令选项中,--- 有什么区别?

- 表示命令选项只有一个字符,-- 表示命令选项是个单词 ( 称为选项的长格式 )。

  • Linux 下启动服务有哪几种方式?

service 命令,或者直接到软件的 /bin 目录下执行相关程序。

  • 使用 ftp 下载文件时下载的文件默认会保存在哪?

输入命令时的当前路径( pwd )。

  • 使用 rpm -e 删除 mysql/apache/php 时为什么不用将对应软件包的完整名称写出来?

Linux 下没有完全相同的两个包名,所以要对包名进行操作只写包名就行了。

  • 如何搭建 Discuz 论坛程序或者 Wordpress 博客程序?

安装步骤同 Windows 环境下的安装。

discuz.tar.gz 解压到 apache/hthocs 目录。然后在浏览器地址栏输入:

http://localhost/discuz/upload/install/index.php

即可进入 discuz 的安装程序。

与在 Windows 下的安装不一样的是,Linux 的安装需要设置相应的权限。

在检测运行环境的时候,对权限不够的文件针对性地赋予读写权限

$ chmod -R 777*

注意

为了安全,不要设置所有文件夹的权限为 777。

安装结束后删除安装文件夹。

本文最后修改时间: 2015年09月28日 19:33:47 (完) CC BY-NC-ND 3.0

若您发现文章中的错误,并愿告知于我,或想与我交流,我的联系方式在: Contacts


上一篇 Javascript 学习笔记

All The Best

下一篇 VirtualBox Q&A