Linux中LAMP构架的实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中LAMP构架的实现相关的知识,希望对你有一定的参考价值。

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服务器

  [[email protected] 桌面]# yum install bind -y

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

  [[email protected] 桌面]# 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) 配置正解数据库文件

  [[email protected] 桌面]# cd /var/named/

  [[email protected] named]# touch named.liaoyuanyang.com

  [[email protected] 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) 配置反解数据库文件

  [[email protected] 桌面]# cd /var/named/

  [[email protected] named]# touch named.192.168.0

  [[email protected] 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端口

  [[email protected] named]# iptables -I INPUT -i eth0 -p udp --dport 53 -j ACCEPT

  [[email protected] named]# iptables -I INPUT -i eth0 -p tcp --dport 53 -j ACCEPT

 技术分享

图 1-5 DNS Server开放53端口

6) 启动DNS服务

  [[email protected] named]# service named start

(3) 在WEB Server(192.168.0.100)上

1) 设置主机名

  [[email protected] 桌面]# gedit /etc/sysconfig/network

  HOSTNAME=www

2) Web服务

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

  [[email protected] 桌面]# service httpd start

b) 本地测试访问Web

技术分享 

图 1-6 WEB Server本地测试WEB

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

  [[email protected] 桌面]# iptables -I INPUT -i eth0 -p tcp --dport 80 -j ACCEPT

3) MySQL服务

a)安装MySQL服务

  [[email protected] 桌面]# yum -y install mysql mysql-server mysql-devel

b) 启动mysqld服务

  [[email protected] 桌面]# service mysqld start

c)为MySQL设置密码

  [[email protected] 桌面]# mysql_secure_installation

4)PHP服务

a)安装PHP服务

  [[email protected] 桌面]# yum -y install php php-mysql

b)重启httpd服务

  [[email protected] 桌面]# service httpd restart

(4)编写PHP和MySQL网站

[[email protected] 桌面]# cd /var/www/html/

[[email protected] html]# touch test.php mysql.php

[[email protected] 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) 在client上设置DNS服务器

[[email protected] ~]# 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构架的实现的主要内容,如果未能解决你的问题,请参考以下文章

LNMP构架-简介与php安装(与lamp不同)

源码编译安装Apache,MySQL,PHP,LAMP构架

使用Lamp构架搭建论坛

LAMP构架-域名跳转

Linux系统之LAMP实现

linux Nginx +keepalived+varnish+lamp实现高可用负载均衡集群