LAMP:Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度共同组成了一个强大的web应用程序平台。而从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案。

1.1实验拓扑结构

图 1-1 LAMP实验拓扑结构

1.2 项目要求

搭建成功支持PHP和MySQL的网站,在浏览器中访问test.php和mysql.php,会出现如下图所示的页面(以alice.com为例):

(1) /var/www/html/test.php源代码:

<?php phpinfo(); ?>

在浏览器中访问该页面:

图1-2 访问php.test成功

(2) /var/www/html/mysql.php源代码:

#cat /var/www/html/mysql.php

<?php

$link = mysql_connect("localhost","root","112233");

if(!$link)

{die ('could not connect:' . mysql_error());}

else

echo "MySql linked";

mysql_close($link);?>

在浏览器中访问该页面:

图1-3 访问mysql.test成功

1.3 项目开展思路(思维导图)

图 1-4 LAMP实验思维导图

1.4 实验步骤

(1) 基础网络搭建

(2) 在DNS Server(192.168.0.253)上

1) 安装DNS服务器

  [root@lyy 桌面]# yum install bind -y

2) 配置主配置文件named.conf

  [root@lyy 桌面]# gedit /etc/named.conf


options {

listen-on port 53 { any; };

directory         "/var/named";

dump-file        "/var/named/data/cache_dump.db";

statistics-file "/var/named/data/named_stats.txt";

memstatistics-file "/var/named/data/named_mem_stats.txt";

allow-query     { any; };

};

zone "liaoyuanyang.com" IN {

type master;

file "named.liaoyuanyang.com";

};

zone "0.168.192.in-addr.arpa" IN {

type master;

file "named.192.168.0";

};


3) 配置正解数据库文件

  [root@lyy 桌面]# cd /var/named/

  [root@lyy named]# touch named.liaoyuanyang.com

  [root@lyy named]# gedit named.liaoyuanyang.com


$TTL 3H

@    IN SOA    master.liaoyuanyang.com. admin.mail.liaoyuanyang.com. (

0    ; serial

1D    ; refresh

1H    ; retry

1W    ; expire

3H )    ; minimum

@                               IN     NS      master.liaoyuanyang.com.

master.liaoyuanyang.com.    IN        A       192.168.0.253

www.liaoyuanyang.com.          IN             A               192.168.0.100

client.liaoyuanyang.com.         IN             A               192.168.0.10


4) 配置反解数据库文件

  [root@lyy 桌面]# cd /var/named/

  [root@lyy named]# touch named.192.168.0

  [root@lyy named]# gedit named.192.168.0


$TTL 3H

@    IN SOA    master.liaoyuanyang.com. admin.mail.liaoyuanyang.com. (

0    ; serial

1D    ; refresh

1H    ; retry

1W    ; expire

3H )    ; minimum

@         IN    NS          master.liaoyuanyang.com.

253        IN    PTR         master.liaoyuanyang.com.

100              IN          PTR                    www.liaoyuanyang.com.

10                IN          PTR                    client.liaoyuanyang.com.


5) 防火墙开放53端口

  [root@lyy named]# iptables -I INPUT -i eth0 -p udp --dport 53 -j ACCEPT

  [root@lyy named]# iptables -I INPUT -i eth0 -p tcp --dport 53 -j ACCEPT

图 1-5 DNS Server开放53端口

6) 启动DNS服务

  [root@lyy named]# service named start

(3) 在WEB Server(192.168.0.100)上

1) 设置主机名

  [root@lyy 桌面]# gedit /etc/sysconfig/network

  HOSTNAME=www

2) Web服务

a)启动Web服务(默认已安装)

  [root@www 桌面]# service httpd start

b) 本地测试访问Web

图 1-6 WEB Server本地测试WEB

c)防火墙对外开放80端口

  [root@www 桌面]# iptables -I INPUT -i eth0 -p tcp --dport 80 -j ACCEPT

3) MySQL服务

a)安装MySQL服务

  [root@www 桌面]# yum -y install mysql mysql-server mysql-devel

b) 启动mysqld服务

  [root@www 桌面]# service mysqld start

c)为MySQL设置密码

  [root@www 桌面]# mysql_secure_installation

4)PHP服务

a)安装PHP服务

  [root@www 桌面]# yum -y install php php-mysql

b)重启httpd服务

  [root@www 桌面]# service httpd restart

(4)编写PHP和MySQL网站

[root@www 桌面]# cd /var/www/html/

[root@www html]# touch test.php mysql.php

[root@www html]# gedit test.php mysql.php

在test.php中添加:

<?php phpinfo(); ?>

图 1-7 test.php源代码

在mysql中添加:


<?php

$link = mysql_connect("localhost","root","666666");

if(!$link)

{die ('could not connect:' . mysql_error());}

else

echo "MySql linked";

mysql_close($link);

?>


图 1-8 mysql.php源代码

(5) 在WEB Server和client上设置DNS服务器

[root@lyy ~]# gedit /etc/resolv.conf

name server 192.168.0.253

1.5结果测试(在client上)

(1)test.php

图 1-9 测试访问test.php

(2)mysql.php

图 1-10 测试访问mysql.php


【版权所有,转载请注明原文出处:http://www.cnblogs.com/liaoyuanyang/p/7029194.html 】

Linux中LAMP构架的实现的更多相关文章

  1. Linux系统安装LAMP

    说明: 系统版本:Ubuntu14.04-LTS,可以在Ubuntu官网直接下载.Ubuntu其他版本也可安装本方法搭建LAMP环境! 步骤一,安装apache2 1 sudo apt-get ins ...

  2. linux中编译安装Apache、PHP、MySQL(上)

    1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...

  3. Linux中搭建一个ftp服务器详解

    来源:Linux社区  作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...

  4. 09:Linux 中各个文件夹的作用

    参考博客 /  根目录 包含了几乎所的文件目录.相当于中央系统.进入的最简单方法是:cd /. /boot  引导程序,内核等存放的目录 这个目录,包括了在引导过程中所必需的文件.在最开始的启动阶段, ...

  5. Linux 中各个文件夹的作用

    /  根目录 包含了几乎所的文件目录.相当于中央系统.进入的最简单方法是:cd /. /boot  引导程序,内核等存放的目录 这个目录,包括了在引导过程中所必需的文件.在最开始的启动阶段,通过引导程 ...

  6. contos LINUX搭建LAMP笔记

    LINUX搭建LAMP笔记 .YUM:Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于R ...

  7. linux中的redis缓存服务器

    Linux中的Redis缓存服务器 一.Redis基础部分: 1.redis介绍与安装比mysql快10倍以上 *****************redis适用场合**************** 1 ...

  8. linux下LAMP环境搭建

    ++++++++++++++++++++++++++++++++++++++++++++++ linux下LAMP环境搭建 ++++++++++++++++++++++++++++++++++++++ ...

  9. linux之lamp环境的搭建

    linux之lamp环境的搭建 1.安装lamp环境的安装工具 我们的lamp环境都是采用源码包进行编译安装: 编译安装需要工具gcc gcc-c++. 建议在线联网安装:yum  -install ...

随机推荐

  1. [LeetCode] Champagne Tower 香槟塔

    We stack glasses in a pyramid, where the first row has 1 glass, the second row has 2 glasses, and so ...

  2. Web Api使用Swagger提供在线文档

    1.添加Swashbuckle引用 2.生成XML文件 3.添加XML解析,在接口添加注释信息 4.运行项目输入地址   http://localhost:58254/swagger

  3. mvc模式的理解

    一开始总是觉得dao层和service层没有区别,甚至觉得service层根本就是多余的,service层就是把dao层的内容调用了一下,然后重写了一次,后来才理解到,dao层是数据链路层,是与数据库 ...

  4. vue中打包后vendor文件包过大

    vue中webpack打包后vendor.xxx.js文件一般都特别大,其原因是因为我们引用的依赖都被压缩成一个js文件,这样会导致vendor文件过大.页面加载速度过慢,影响用户体验.所以我们就要把 ...

  5. vue加载流程

    首先加载main.js,main.js中new一个vue实例,这个实例中会有一个id="app"映射到app.vue,启动时候首页映射到index.html,其中<div i ...

  6. RemoveError: 'requests' is a dependency of conda and cannot be removed from conda's operating environment

    (base)$ conda update conda conda remove -n *** --all 或者 (base)$ conda update --force conda conda rem ...

  7. 找出sql脚本中需要创建的表空间名称和数据库用户名

    测试的工作中,经常会遇到项目交接或者搭建一个新的测试环境,而创建oracle数据库用户及表空间时,需要提前找出脚本中的 数据库用户名和表空间名,所以自己写了一个python脚本,自动找出sql脚本中的 ...

  8. VUE-010-通过声明式导航 router-link 传递 params 参数(路由 name 识别,请求链接不显示参数传递)

    在前端页面表单列表修改时,经常需要在页面切换的时候,传递需要修改的表单内容,除了通过路由进行表单参数的传递,也可通过声明式导航 router-link 进行页面跳转和参数传递. 首先,配置页面跳转路由 ...

  9. 【托业】【全真题库】TEST1-语法题

    TEST01 103. delivery date 交货日期 delivery n.传送,投递; [法](正式)交付; 分娩; 讲演; 104. net revenue 净收入,纯收入 105. re ...

  10. 数据结构 - 表插入排序 具体解释 及 代码(C++)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u012515223/article/details/24323125 表插入排序 具体解释 及 代码 ...