搭建LAMP测试环境
LAMP:Linux+Apache+Mysql+Php,组合统称为LAMP,关于其中的独立个体,这里就不多介绍了。
1、首先准备一下软件包,如下:
mysql-5.0.22.tar.gz
httpd-2.2.17.tar.gz
php-5.3.5.tar.gz
以上是LAMP搭建必备的安装包,可以去各个官方网站上下载,至于这里为什么选择源代码安装,当然rpm包也可以安装,选择源代码安装的目的就为了让我们更详细的了解LAMP其中复杂的配置过程。这三个安装包没有先后的安装顺序,先将以上三个包上出至Linux下的/usr/local/src目录下,并给予可执行权限。
2、安装mysql,在之前的博文中已经详细介绍了mysql rpm包的安装方法,这里要介绍mysql的源代码编译安装方式,进入已经部署好饿的Centos linux学习环境,通过命令ps -ef | grep mysql来查看是否有运行的mysql进程,然后可以通过一些命令来查找mysql是否已经安装,具体如下:
》groupadd mysql
》 useradd mysql -g mysql //创建mysql用户,并将用户指定至mysql组
》 tar -zxvf mysql-5.0.22.tar.gz //解压到mysql-5.0.22目录下
》./configure --prefix=/usr/local/mysql //这里是配置mysql的安装目录
》make
》make install //安装
》cp support-files/my-medium.cnf /etc/my.cnf //待安装完成之后,将当前目录下的配置文件拷贝到系统配置文件下,并更名为my.cnf
》cd /usr/local/mysql //切换到mysql安装目录下
》chown -R mysql . //将该目录的用户权限全部更改为mysql用户
》chgrp -R mysql . //将该目录的用户组全部更改为mysql用户组
》bin/mysql_install_db --user=mysql //将mysql目录的数据使用权限指定为mysql
》chown -R mysql var
》bin/mysqld_safe --user=mysql & //指定mysql用户启动mysql
》bin/mysqladmin -u root password 新密码 //执行这个命令用于设置或者更改数据库的密码
》cp /usr/local/src/mysql-5.0.22/support-files/mysql.server /etc/rc.d/init.d/mysql //这里将mysql的启动文件拷贝到系统的启动目录下
》chmod +x /etc/rc.d/init.d/mysql //给系统目录的mysql命令以可执行权限
》chkconfig --add mysql //将mysql启动添加到系统自启动列表下
当然这里还有另外一些方法来设置mysql自动启动,以上就是mysql源代码编译安装全过程,为了验证mysql安装是否成功,需要执行如下命令:
》/usr/local/mysql/bin/mysqld_safe --user=mysql & //启动mysql数据库服务
》/usr/local/mysql/bin/mysql -uroot -proot //进入并访问mysql数据,如果进入mysql数据库命令行,说明mysql数据库安装成功。
如图所示:

3、安装apache,命令行如下:
》tar -zxvf httpd-2.2.4.tar.gz
》cd httpd-2.2.4
》./configure --prefix=/usr/local/apache --with-mysql=/usr/local/mysql --enable-module=so --enable-shared=max //配置与mysql的关联,并启动动态连接库
》make
》make install
启动apache服务,如下图所示:

设置apache自动随操作系统启动,命令如下:
》echo "/usr/local/apache/bin/apachectl start" >> /etc/rc.local //将apache的启动程序命令放置系统启动文件下,当然mysql也可以这么设置
4、安装php,命令行如下:
》tar -zxvf php-5.2.2.tar.gz
》cd php-5.2.2
》./configure --prefix=/usr/local/php/ --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs --enable-sockets //这里是配置php与apache、mysql的关联
》make
》make install
》cp php.ini-development /usr/local/php/lib/php.ini //这里需要注意的是,在新版的php配置文件将php.ini-dist更改成php.ini-development
》vi /usr/local/php/lib/php.ini //这里需要将register_globals=Off更改on模式,还有时间格式改为本地
上述就是PHP的安装过程。
5、测试
安装完成以上个包之后,需要更改apache的配置文件,来达到解析php文件的目的
》vi /usr/local/apache/conf/httpd.conf
通过“/”来查找到AddType application/x-gzip .tgz,这里需要注意的是,不是带有的注意标记的#,在找到AddType application/x-gzip .tgz的后面添加如图所示文件:

添加文件为AddType application/x-httpd-php .php .phtml,表示apache服务中可以解析php格式文件
接下来要检查apache目录下生成的php动态连接库文件,在目录/usr/local/apache/modules,找到是否存在 libphp5.so文件
一系列安装结束之后,通过一个简单的php测试页面来测试LAMP环境搭建成功与否。
vi /usr/local/apache/htdocs/index.php
内容为:
<?php
phpinfo();
?>
启动httpd
在浏览器上输入:http://ip/index.php,显示如下页面,表明成功;

里面分别显示php、apache和mysql的相关版本信息等内容。
搭建LAMP测试环境的更多相关文章
- 图文详解linux如何搭建lamp服务环境
企业网站建设必然离不开服务器运维,一个稳定高效的服务器环境是保证网站正常运行的重要前提.本文小编将会详细讲解Linux系统上如何搭建配置高效的lamp服务环境,并在lamp环境中搭建起企业自己的网站. ...
- Ubuntu16.04搭建LAMP开发环境
Ubuntu16.04搭建LAMP开发环境 虚拟机上安装好Ubuntu16.04后,是一台空白的Ubuntu.我的目的是搭建LAMP环境,顺便搭一个Python Django环境. 基本设置 1.配置 ...
- 使用XAMPP和DVWA在Windows7上搭建渗透测试环境
前言: XAMPP是一个Web应用程序运行环境集成软件包,包括MySQL.PHP.PerI和Apache的环境及Apache.MySQL.FilleZilla.Mercury和Tomecat等组件.D ...
- 使用WampServer和DVWA在Windows10上搭建渗透测试环境
前言: DVWA是一个具有脆弱性的Web测试应用,需要PHP和MySQL的环境支持.我们可以手动配置DVWA所需的运行环境,也可以使用WampServer进行搭建.WampServer是集成了Apac ...
- 使用Rancher搭建K8S测试环境
使用Rancher搭建K8S测试环境 http://blog.csdn.net/csdn_duomaomao/article/details/75316926 环境准备(4台主机,Ubuntu16.0 ...
- 利用Docker Compose快速搭建本地测试环境
前言 Compose是一个定义和运行多个Docker应用的工具,用一个YAML(dockder-compose.yml)文件就能配置我们的应用.然后用一个简单命令就能启动所有的服务.Compose编排 ...
- 一文教您如何通过 Docker 快速搭建各种测试环境(Mysql, Redis, Elasticsearch, MongoDB) | 建议收藏
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- Docker-教你如何通过 Docker 快速搭建各种测试环境
今天给大家分享的主题是,如何通过 Docker 快速搭建各种测试环境,本文列举的,也是作者在工作中经常用到的,其中包括 MySQL.Redis.Elasticsearch.MongoDB 安装步骤,通 ...
- 一文带你趟过mac搭建appium测试环境的遇到的坑
做UI自动化,最难的一步就是在环境搭建上,怎么去搭建一个UI自动化测试的环境,会难住很多人,在Mac上搭建appium如何搭建呢,本文带着大家去领略如何在mac上搭建appium测试环境.下面就是详细 ...
随机推荐
- 【锋利的JQuery-学习笔记】切换网页皮肤-且保存于Cookie
切换网页皮肤: html片段: <head> <link rel="stylesheet" href="styles/skin/skin_0.css&q ...
- 翻译:用Javascript的Function构造器伪造上下文 by Ben Nadel
在我的jQuery模板标记语言(JTML)项目中,我需要一种方式将JTML模板编译到JS函数,这样它们就可以如期地在任何时候转换成新的HTML标记.但这是一个严峻的问题,因为JTML代码涉及非作用域( ...
- Unity3D IOS IPhone添加Admob的方法
原地址:http://dong2008hong.blog.163.com/blog/static/4696882720140403119293/ 首先阅读官方文档https://developers. ...
- Spring Boot——2分钟构建spring web mvc REST风格HelloWorld
之前有一篇<5分钟构建spring web mvc REST风格HelloWorld>介绍了普通方式开发spring web mvc web service.接下来看看使用spring b ...
- Chp4: Trees and Graphs
1.Type of Tree 1. Binary Tree: a binary tree is a tree in which each node has at most two child node ...
- 玩转图片Base64编码
什么是 base64 编码? 图片的 base64 编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址. 这样做有什么意义呢?我们知道,我们所看到的网页上的每一个图片,都是需要消耗一 ...
- Ubuntu环境下nutch2.2.1集成HBase0.94.25
nutch2.2.1集成HBase0.94.25 (详见:http://duguyiren3476.iteye.com/blog/2085973 ) 1. 修改nutch的hbase配置 //将自己的 ...
- linux入门教程(二) 图形界面还是命令窗口
对于linux的应用,我想大多数都是用在服务器领域,对于服务器来讲真的没有必要跑一个图形界面.所以我们平时安装linux操作系统时往往是不安装图形界面的.说到这里也许你会有疑问,图形界面还能选择装或者 ...
- jquery控制按钮的禁用与启用
jquery禁用a标签方法1: $(document).ready(function () { $("a").each(function () { var textValue = ...
- cojs 简单的数位DP 题解报告
首先这道题真的是个数位DP 我们考虑所有的限制: 首先第六个限制和第二个限制是重复的,保留第二个限制即可 第五个限制在转移中可以判断,不用放在状态里 对于第一个限制,我们可以增加一维表示余数即可 对于 ...