Linux 操作系统 实验指导 实验八 :LAMP 服务器的实施与管理 一 实验目的 1 掌握 Linux 系统下安装 Apache 服务器的方法 ; 2 掌握 Linux 系统下安装 PHP 服务的方法 ; 3 掌握 Linux 系统下安装 MySQL 数据库的方法 ; 4 理解 Linux 服务器的基本概念 二 实验学时 2 学时 三 实验类型 综合性 四 实验需求 1 硬件单机虚拟化 : 每人配备计算机 1 台, 计算机接入实验室局域网, 且使用固定 IP 地址 云服务器 : 每人配备计算机 1 台 云服务器 1 台, 云服务器提供 SSH 方式的远程管理 2 软件 Windows 7 操作系统, 安装 VMware Workstation 10+ PuTTY 软件 3 网络支持对互联网的访问 4 工具无 五 实验理论 1 LAMP 的基本安装 部署和使用 ; 2 Linux Server 的基本概念 ; 六 预备知识 1 开源软件 Drupal; 2 Linux 下软件安装的基本步骤和方法 ; 3 常见的 Web 服务器有哪些? 请查阅相关资料完成表 1-1 常见的 Web 服务器对比分析一览表 表 1-1 常见的 Web 服务器对比分析一览表 Web 服务器 运行环境 优点 安装方法 管理科学与工程学科 / 共 9 页, 第 1 页
请查阅相关资料, 完成表 1-1 的填写, 至少需要填写 4 种常见的 Web 服务器, 并将表格填写到实验报告册中 4 常见的 MySQL 管理工具有哪些? 请查阅相关资料完成表 1-2 常见的 MySQL 管理工具对比分析一览表 表 1-2 常见的 MySQL 管理工具对比分析一览表软件名称是否开源优点使用方法 请查阅相关资料, 完成表 1-2 的填写, 至少需要填写 4 种常见的 MySQL 管理工具, 并将表 格填写到实验报告册中 七 实验任务 1 掌握 Linux 系统下安装 Apache 服务 PHP 服务和 MySQL 服务 ; 2 完成 LAMP 服务器的配置, 并进行测试 ; 3 完成 LAMP 下开源软件的安装配置 ; 4 通过实验体会 LAMP 服务器的管理方法 八 实验步骤 1 实验场景与实验环境准备本实验可根据实验室的具体条件, 在单机虚拟化和云服务器两种场景下开展实验教学 (1) 单机虚拟化场景下开展实验教学实验场景 : 每位学生通过物理主机上的虚拟化软件 VMware workstation 安装 Ubuntu Server 虚拟操作系统, 虚拟操作系统 Ubuntu Server 配备固定 IP 地址, 并开启 SSH 远程管理服务 实验准备 : 管理科学与工程学科 / 共 9 页, 第 2 页
试 ; 1 启动虚拟化软件 VMware workstation 并附加上 Ubuntu Server 操作系统 ; 2 配置 Ubuntu Server 操作系统的网络, 并在虚拟主机上使用 Ping 命令进行网络连通性测 3 在虚拟主机上安装 openssh,ufw 开启 openssh 服务, 并设置 ufw 的规则为允许 172.16.2.x/24 的主机访问, 开放 22 端口 4 虚拟主机后台运行, 通过物理主机上的 PuTTY 软件, 连接 Ubuntu Server 操作系统 (2) 云服务器场景下开展实验教学 实验场景 : 在云服务器为学生安装部署 Linux 操作系统, 每个操作系统配备固定 IP 地址, 并开启 SSH 远 程管理服务, 并把 root 用户权限和远程访问信息提供给学生 实验准备 : 学生使用 Windows 7 操作系统开展实验学习, 使用 PuTTY 软件根据教师提供的云服务器访问 信息远程访问实验用的 Linux 操作系统 2 安装并配置 Apache 服务 (1) 安装并配置 Apache sudo apt-get install apache2 sudo ufw allow 80 (2) 测试 Apache 安装 # 安装 Apache 服务 # 开放 80 端口 通过使用本地 Windows 计算机的浏览器, 访问 Ubuntu Server 的服务器地址 ( 例如 : http://192.168.2.254), 如果能够访问, 显示 It Works 字样, 说明 Apache 安装成功 请查阅相关资料修改 Apache 服务的端口号为 8088, 同时添加防火墙规则, 防火墙规则为 开放 Apache 服务端口 8088 3 安装并配置 PHP (1) 安装 PHP 和相关模块 apt-get install php5 apt-get install libapache2-mod-php5 (2) 创建 PHP 网页 在 Ubuntu Server 的 /var/www/ 目录下创建文件 phptest.php touch phptest.php nano phptest.php 在 phptest.php 文件内输入下属内容 : # 安装 php5 # 安装 Apache 与 php 连接库 <?php echo "<h1 align='center'>welcome Visit PHP Test Site.</h1></br>"; echo phpinfo();?> 修改 phptest.php 文件的权限为 755 管理科学与工程学科 / 共 9 页, 第 3 页
chmod 755 /var/www/phptest.php (3) 测试 PHP 安装 通过物理主机上的浏览器, 访问 Ubuntu Server 的 Web 服务器中的 phptest.php 地址 ( 例 如 :http://172.16.2.10/phptest.php), 如果能够访问并且显示 PHP 的详细信息, 说明 PHP 安装 成功 4 安装并配置 MySQL 服务 (1) 安装 MySQL Server apt-get install mysql-server-5.5 # 安装 MySQL 5.5 apt-get install php5-mysql # 安装 MySQL 与 php 连接库 (2) 对 MySQL 数据库进行测试 创建数据库 数据表, 并添加数据 mysql uroot p123456 create database StudentInformation; use StudentInformation; create table StudentInfo ( studentid char(10) not null, studentname char(14) not null, studentsex char(1) not null, studentphone char(11) not null, primary key (studentid) ); insert into StudentInfo values ('2012181001', 'Zhang San', '1', '13983839091'); insert into StudentInfo values ('2012181002','Li Si','0','13983833491'); insert into StudentInfo values ('2012181003', 'Wang Wu', '1', '13983839876'); insert into StudentInfo values ('2012181004', 'Zhao Liu', '1', '13983839342'); select * from StudentInfo; (3) 创建 php 程序, 读取 MySQL 数据库并展示数据 在 Ubuntu Server 的 /var/www/ 目录下创建文件 ReadStudentInfo.php cd /var/www touch ReadStudentInfo.php nano ReadStudentInfo.php 在 ReadStudentInfo.php 文件中输入下述内容 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title> 访问数据库, 展示学生信息 </title> <style> body margin:10px 0px; padding:0px; 管理科学与工程学科 / 共 9 页, 第 4 页
font-size:13px; h1 font-size:18px; font-family:" 微软雅黑 "," 黑体 "; table width:500px; border:none; padding:0px; th,td border-bottom:1px #CCCCCC solid; height:26px; padding:4px 1px 2px 4px; text-align:left; th font-weight:bold; border-top:1px #CCCCCC solid; </style> </head> <body> <center> <h1> 学生基本信息表 </h1> <table cellpadding="0" cellspacing="0"> <tr> <th>studentid</th> <th>studentname</th> <th>stuentsex</th> <th>studentphone</th> </tr> <?php $ConnectionDB = mysql_connect("localhost","root","123456"); if(!$connectiondb) echo " 数据库连接失败!"; else mysql_select_db("studentinformation",$connectiondb); $ConnectionString = "Select * From StudentInfo"; $ConnectionRS = mysql_query($connectionstring,$connectiondb); if(!$connectionrs) echo "No Student Information."; else 管理科学与工程学科 / 共 9 页, 第 5 页
while ($ConnectionRow = mysql_fetch_array($connectionrs)) echo "<tr><td>"; echo $ConnectionRow[studentID]; echo "</td><td>"; echo $ConnectionRow[studentName]; echo "</td><td>"; echo $ConnectionRow[studentSex]; echo "</td><td>"; echo $ConnectionRow[studentPhone]; echo "</td></tr>"; mysql_free_result($connectionrs); mysql_close($connectiondb);?> </table> </center> </body> </html> 修改 ReadStudentInfo.php 文件的权限为 755 chmod 755 /var/www/readstudentinfo.php (4) 测试 LAMP 的安装情况 通过物理主机上的浏览器, 访问 Ubuntu Server 的 Web 服务器中的 ReadStudentInfo.php 地址 ( 例如 :http://172.16.2.10/readstudentinfo.php), 如果能够访问并且显示学生基本信息列 表, 说明 Apache PHP MySQL 安装成功, 如图 8-1 所示 5 LAMP 平台下的软件部署 Linux+Apache+MySQL+PHP 是一组常用来搭建动态网站或者服务器的开源软件, 构成了一个强大的 Web 应用程序平台 通过 LAMP 平台进行开源软件 Drupal 的部署 具体安装步骤如下 : 管理科学与工程学科 / 共 9 页, 第 6 页
1 安装 PHP 组件 gd 库 apt-get install php5-gd 2 下载 解压 重命名 移动开源软件 Drupal # 下载 Drupal wget http://ftp.drupal.org/files/projects/drupal-7.28.tar.gz # 解压缩软件 tar -zvxf drupal-7.2.8.tar.gz # 重命名为 drupal 并复制到 /var/www 文件目录下 mv drupal-7.2.8 /var/www/drupal 3 在 MySQL 中创建数据库 drupal mysql -uroot -p123456 create database drupal show database 4 相关文件操作 cd /var/www/durpal cp sites/default/default.settings.php sites/default/settings.php chmod o+w sites/default/settings.php chmod o+w sites/default mkdir sites/default/files chmod o+w sites/default/files chmod a-w sites/default/settings.php 5 安装 Drupal 打开物理主机的浏览器, 访问 drupal, 进行 web 配置 例如 LAMP 服务器的 IP 地址为 172.16.2.12; http://172.16.2.12/drupal # 在浏览器的地址栏中输入 根据相关提示, 填写安装确认 主机名 用户名 密码等, 完成 Drupal 的安装 可以通过上述网址访问, 效果如图 8-2 所示 在 LAMP 上部署一套 PHP 的开源软件, 自主学习 LAMP 环境下的软件部署, 并将详细的安 管理科学与工程学科 / 共 9 页, 第 7 页
装过程和配置命令填写到实验报告册中 九 实验分析 1 Apache 服务器 (1) 常见的 Apache 服务器的性能指标有哪些? (2) 请至少选择 (1) 中的两个性能指标进行验证性实验 1 请查阅相关资料回答上述 (1) 的问题 并将具体的答案填写到实验报告册中 2 请按照上述 (2) 的要求, 进行具体实验, 并将实验步骤 实验测试报告填写到实验报告 册中 2 MySQL 数据库权限管理 (1) 创建一个只允许指定主机 ( 例如本地物理主机 ) 登陆的超级用户 test1, 密码是 123456; (2) 创建一个普通用户, 用户名为 test2, 密码是 123456, 只允许本机登陆, 权限为查询 插入 更新 删除数据库中所有表数据, (3) 分别回收 test1 test2 的所有权限 1 请查阅相关资料回答上述 (1)( 2)( 3)3 个问题, 并将具体的操作命令填写到实验报告 册中 2 请对上述 (1) 中的操作命令的各个字段的含义进行阐述, 并将具体的字段含义填写到实 验报告册中 十 课外自主实验 1 LAMP 的安装部署 (1) 基于 Red Hat 操作系统完成 LAMP 的部署 ; (2) 基于 CentOS 操作系统, 通过本地安装程序完成 LAMP 的安装部署 ( 禁止使用在线安装 的方式 ) 请按照上述 (1)( 2)2 个要求, 进行具体实验, 并将实验步骤填到实验报告册中 2 LNMP 的安装部署 (1)LNMP 表示为 :Linux+Nginx+MySQL+PHP; (2) 基于 CentOS 操作系统, 任选一种安装方式完成 LNMP 的安装部署 ; (3) 选择合适方式对安装部署的 LNMP 进行功能测试 请按照上述 (2)(3)2 个要求, 进行具体实验, 并将实验步骤 测试方法填到实验报告册 中 十一 实验扩展资源 管理科学与工程学科 / 共 9 页, 第 8 页
1 图书 (1) 构建高可用 Linux 服务器 余洪春机械工业出版社 ; (2) Linux 服务器架设指南 林天峰 谭志彬清华大学出版社 ; (3) Linux 服务器配置与管理 张敬东清华出版社 2 文章 (1)LAMP 安装配置 :http://www.2cto.com/os/201201/117808.html; (2)LAMP 的编译安装 :http://blog.chinaunix.net/uid-26963748-id-3267204.html; (3)MySQL 权限管理 :http://blog.chinaunix.net/uid-20639775-id-3249105.html; (4)drupal 的安装 :http://blog.163.com/wonlyn@126/blog/static/1062419200771745420939/ 3 互联网资源 (1)Linux 中国社区 :http://linux.chinaunix.net (2)Linux 中文交流社区 :http://linux.cn (3) 中国 Linux 论坛 :http://www.linuxvedio.cn 4 电子资源下载 http://ke.51xueweb.cn /Linux.html 管理科学与工程学科 / 共 9 页, 第 9 页