如何通过Linux+Apache+MySQL+PHP搭建简单的动态网站

1.实验原理

1)LAMP的定义

LAMP指的Linux(操作系统)、ApacheHTTP 服务器,MySQL(有时也指MariaDB,数据库软件PHP(有时也是指PerlPython的第一个字母,一般用来建立web应用平台

2)软件组件

①LinuxLinux 是免费开源软件,这意味着源代码可用的操作系统。

②ApacheApache 是使用中最受欢迎的一个开放源码WEB服务器软件。

③MySQLMySQL 是多线程、多用户的SQL数据库管理系统

④PHP,Perl 或 PythonPHP 是一种编程语言最初设计生产动态网站PHP 是主要用于服务器端的应用程序软件。Perl 和 Python 类似。

3)网站架构方案

LAMP(Linux- Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统,Apache网络服务器,MySQL数据 库,Perl、PHP或者Python编程语言

操作系统

Linux操作系统有很多个不同的发行版,如Red Hat Enterprise Linux、SUSE Linux Enterprise、Debian、Ubuntu、CentOS等,每一个发行版都有自己的特色,比如RHEL的稳定,Ubuntu的易用,基于稳定性 和性能的考虑,操作系统选择Ubuntu。

②Web服务器、缓存和PHP加速

Apache是LAMP架构最核心的Web Server,开源、稳定、模块丰富是Apache的优势。但Apache的缺点是有些臃肿,内存和CPU开销大,性能上有损耗,不如一些轻量级的Web 服务器(例如nginx)高效,轻量级的Web服务器对于静态文件的响应能力来说远高于Apache服务器。

PHP的加速使用eAccelerator加速器,eAccelerator是一个*开放源码PHP加速器,优化和动 态内容缓存,提高了性能PHP脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。它还有对脚本起优化作用,以加快其执行效率。 使PHP程序代码执效率能提高1-10倍。

数据库

开源的数据库中,MySQL在性能、稳定性和功能上是首选,可以达到百万级别的数据存储,网站初期可以将MySQL和Web服务器放在一起,但是当访问 量达到一定规模后,应该将MySQL数据库从Web Server上独立出来,在单独的服务器上运行,同时保持Web Server和MySQL服务器的稳定连接。

综上所述,基于LAMP架构设计具有成本低廉、部署灵活、快速开发、安全稳定等特点,是Web网络应用和环境的优秀组合。

2.实验过程记录

1)Apache安装及搭建

初次下载软件包时,需要先更新一下软件包,执行命令:

sudo apt-get update;

安装apache软件,执行命令:

sudo apt-get install apache2

修改apache配置文件,执行命令:

sudo vi /etc/apache2/sites-available/000-default.conf

在文件里面找到"DocumentRoot /var/www/html"的位置-->更改"/var/www/html"为新的根目录就可以了,这里我把它更改为"/var/www/"

利用Dreamweaver制作的静态网页放到/var/www目录下

重启apache服务器,执行命令:

sudo /etc/init.d/apache2 restart

在浏览器里输入http://localhost或者是http://127.0.0.1,即可看到制作静态网页

如何通过Linux+Apache+MySQL+PHP搭建简单的动态网站

 

2)PHP的安装

①PHP软件包的安装,执行命令为:

sudo apt-get install  php

②PHP软件扩展包的安装,其执行命令为:

sudo apt-get install libapache2-mod-php

3)Mysql的安装及配置

①Mysql软件的安装,执行命令为:

sudo apt-get install mysql-server mysql-client

设定数据库登录密码:

输入数据库的登录密码,按TAb键选择确定,接下来还会重复密码,重复输入上步输入的密码

 如何通过Linux+Apache+MySQL+PHP搭建简单的动态网站

 

4)phpmyadmin的安装及配置

为了管理和操作,安装phpmyadmin软件包,执行命令:

sudo apt-get install phpmyadmin

安装及设置界面,如何通过Linux+Apache+MySQL+PHP搭建简单的动态网站

在这里tab键选择是,进行安装,在安装过程中会要求选择Web server:apache2或lighttpd,使用空格键选定apache2,按tab键然后确定。接下来要求输入密码,输入在上一步中设置的密码,需要输入两次,完成安装。

建立apache2与phpmyadmin的连接,执行命令:

sudo ln -s /usr/share/phpmyadmin /var/www

④phpmyadmin的测试,在浏览器地址栏中打开http://localhost/phpmyadmin就能够进入登录界面,输入前面配置的用户名和密码进行登录,如下图所示。

如何通过Linux+Apache+MySQL+PHP搭建简单的动态网站

登录后的界面如图所示:

 如何通过Linux+Apache+MySQL+PHP搭建简单的动态网站


  5)学生信息管理系统动态网页的制作与搭建

学生信息管理系统动态网页的搭建

I index.php文件   ------->主界面

<!DOCTYPE html>

<head>

    <meta charset="UTF-8">

    <title>学生信息管理</title>

    <script>

        function doDel(id) {

            if (confirm("确定要删除么?")) {

                window.location = 'action.php?action=del&id='+id;

            }

        }

    </script>

</head>

<body>

<center>

    <?php

    include_once "menu.php";

    ?>

    <h3>浏览学生信息</h3>

    <table width="600" border="1">

        <tr>

            <th>ID</th>

            <th>姓名</th>

            <th>性别</th>

            <th>年龄</th>

            <th>班级</th>

            <th>操作</th>

        </tr>

        <?php

        //1.连接数据库

        try {

            $pdo = new PDO("mysql:host=localhost;dbname=test2;", "root", "root");

        } catch (PDOException $e) {

            die("数据库连接失败" . $e->getMessage());

        }

        //2.解决中文乱码问题

        $pdo->query("SET NAMES 'UTF8'");

        //3.执行sql语句,并实现解析和遍历

        $sql = "SELECT * FROM stu ";

        foreach ($pdo->query($sql) as $row) {

            echo "<tr>";

            echo "<td>{$row['id']}</td>";

            echo "<td>{$row['name']}</td>";

            echo "<td>{$row['sex']}</td>";

            echo "<td>{$row['age']}</td>";

            echo "<td>{$row['classid']}</td>";

            echo "<td>

                    <a href='javascript:doDel({$row['id']})'>删除</a>

                    <a href='edit.php?id=({$row['id']})'>修改</a>

                  </td>";

            echo "</tr>";

        }

 

        ?>

 

    </table>

</center>

 

</body>

</html>

数据库的搭建

进入数据库的命令:mysql -uroot -p

然后输入数据库的密码,即进入数据库,显示当前都有哪些数据库的命令:show datas

如何通过Linux+Apache+MySQL+PHP搭建简单的动态网站

   创建一个stu的新表,包含5个字段,ID,姓名,性别,年龄,班级;其命令为:

create table stu(id int(10) not null auto_increment,username varchar(30),sex char(2),age int(100),classid varchar(30));

然后往建好的test2表中写入数据  insert into stu(id,name,sex,age,classid) value('4','xiaoming','1','21','dianke');

刷新此时的网页,数据库中修改好的数据即显示在网页前端了,完成了动态的更新。

 如何通过Linux+Apache+MySQL+PHP搭建简单的动态网站

3.实验总结 

    1.掌握了Ubuntu服务器网站环境的搭建。

2.利用了LAMP搭建出动态网站。