【愚公系列】《Web应用安全》003-测试环境的搭建

💎【行业认证·权威头衔】

✔ 华为云天团核心成员:特约编辑/云享专家/开发者专家/产品云测专家

✔ 开发者社区全满贯:CSDN博客&商业化双料专家/阿里云签约作者/腾讯云内容共创官/掘金&亚马逊&51CTO顶级博主

✔ 技术生态共建先锋:横跨鸿蒙、云计算、AI等前沿领域的技术布道者

🏆【荣誉殿堂】

🎖 连续三年蝉联"华为云十佳博主"(2022-2024)

🎖 双冠加冕CSDN"年度博客之星TOP2"(2022&2023)

🎖 十余个技术社区年度杰出贡献奖得主

📚【知识宝库】

覆盖全栈技术矩阵:

◾ 编程语言:.NET/Java/Python/Go/Node...

◾ 移动生态:HarmonyOS/iOS/Android/小程序

◾ 前沿领域:物联网/网络安全/大数据/AI/元宇宙

◾ 游戏开发:Unity3D引擎深度解析

文章目录


🚀前言

🔎项目描述

公司的研发部门承接了一些业务,使用PHP语言开发了一些网站,现在要求小王在Ubuntu 18.04操作系统上搭建测试环境,以便对网站的一些功能进行测试。

🔎项目分析

小王在与研发部门同事沟通之后,明确了具体的需求,即需要在Ubuntu 18.04中安装PHP 7、Apache 2和MySQL数据库,具体的小版本号不做要求。小王决定使用Ubuntu系统的apt进行安装。apt是一个命令行实用程序,也是一个Linux软件包管理工具,用于在Ubuntu、Debian和相关Linux发行版上安装、更新、删除和管理deb软件包。

🔎背景知识

LAMP环境 通常是指 Linux(操作系统) + Apache(Web服务器) + MySQL(数据库) + PHP(编程语言) 的集成环境,通过LAMP环境可以快速地搭建一个动态网站。由于LAMP环境的组件都是开源的,因此LAMP环境被更多的企业和个人开发者所青睐。而WAMP环境中的"W"则是指Windows操作系统。

换源就是更改源服务器。与Windows不同,Ubuntu能够从官方指定的源服务器上下载安装各种软件,但是默认的源可能在国外,下载速度慢,所以一般会换成国内的源。

🚀一、测试环境的搭建

🔎1.工作任务

🦋第一步:Ubuntu 18.04 换源

在换源之前,需要先备份原来的源,在Ubuntu系统中执行以下命令来备份源:

bash 复制代码
sudo mv /etc/apt/sources.list /etc/apt/sources.backup

使用以下命令来编辑 sources.list 文件:

bash 复制代码
sudo vim /etc/apt/sources.list

sources.list 文件中,按住 i(小写)键进入vim的插入模式,并将以下中科大源粘贴到文件中。

中科大源:

txt 复制代码
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

粘贴完成后,按 Esc 键退出插入模式,按住 Shift:(英文冒号)键,输入 wq,保存并退出 sources.list 文件。

使用以下命令查看 sources.list 文件的内容:

bash 复制代码
cat /etc/apt/sources.list

如图3-1所示。

最后执行以下命令更新系统:

bash 复制代码
sudo apt update

即可完成Ubuntu的换源操作。


🦋第二步:安装 Apache2

在Ubuntu的命令行下输入以下命令安装Apache2:

bash 复制代码
sudo apt install apache2

在安装过程中会提示 "Do you want to continue? [Y/n]",输入 Y 继续进行安装。

安装完成后,使用 ifconfig 命令查看Ubuntu的IP地址,在浏览器中访问Apache默认页面(http://IP),若出现图3-2中的页面,则说明Apache2已经在运行。

Apache的常用命令有以下3个:

bash 复制代码
# 查看状态
sudo systemctl status apache2

# 启动/停止/重启Apache2
service apache2 start/stop/restart

# 卸载Apache2
sudo apt-get remove apache2

🦋第三步:安装 MySQL

在Ubuntu的命令行下输入以下命令安装MySQL的服务器端和客户端:

bash 复制代码
apt-get install mysql-server mysql-client

在安装过程中会提示 "Do you want to continue? [Y/n]",输入 Y 继续进行安装。

安装完成后,使用以下命令查看MySQL的版本:

bash 复制代码
mysql -V

如图3-3所示。

初次登录MySQL时,由于没有root密码用户会登录失败,因此需要重置root密码。此方法也适用于忘记root密码的情况。

使用以下命令查看密码:

bash 复制代码
sudo cat /etc/mysql/debian.cnf

从输出内容中找出 password 行,查看并记下该密码,如图3-4所示。

使用以下命令以 debian-sys-maint 用户身份登录MySQL:

bash 复制代码
mysql -u debian-sys-maint -p

输入刚刚查看的密码,即可成功登录,如图3-5所示。

在MySQL中按顺序执行以下4条命令:

sql 复制代码
# 选择数据库
use mysql;

# 更新密码,这里设置为root,请根据实际情况设置
update mysql.user set authentication_string=password('root') where user='root' and Host='localhost';

# 更新插件
update user set plugin="mysql_native_password";

# 立即生效
flush privileges;
quit;

此时MySQL数据库中 root 用户的密码已经被修改成 "root",需要使用以下命令重启MySQL数据库:

bash 复制代码
sudo service mysql restart

使用以下命令登录MySQL数据库,输入密码 "root",即可登录:

bash 复制代码
mysql -u root -p

MySQL的常用命令展示如下:

bash 复制代码
# 启动/停止/重启MySQL / 查看状态
service mysql start/stop/restart/status

🦋第四步:安装 PHP

在Ubuntu的命令行下输入以下命令安装PHP 7:

bash 复制代码
sudo apt-get install php7.0

在安装过程中会提示 "Do you want to continue? [Y/n]",输入 Y 继续进行安装。

安装完成后,使用以下命令查看PHP的版本:

bash 复制代码
php -V

如图3-6所示。


🦋第五步:安装各联动模块

给Apache安装模块,当Apache看到用户请求PHP文件时,就会交给这个模块处理,服务器端处理完PHP文件再传送给用户。在Ubuntu的命令行下依次执行以下命令:

bash 复制代码
sudo apt-get install libapache2-mod-php7.2
sudo apt-get install php7.2-mysql

安装完联动模块后,需要使用以下命令重启Apache2:

bash 复制代码
service apache2 restart

🦋第六步:测试用例

进入 /var/www/html 目录,该目录是网站的根目录,创建 test.php 文件并写入以下代码:

php 复制代码
<?php phpinfo(); ?>

使用 ifconfig 命令查看Ubuntu的IP地址,在浏览器中访问 http://IP/test.php,从图3-7中可以看到,已经成功解析PHP的 phpinfo() 函数。

至此,LAMP环境搭建完毕

🔎2.归纳总结

本任务主要是通过 apt 安装与LAMP环境相关的组件,有一个重要的操作就是Ubuntu换源 。如果读者在使用 apt 安装LAMP环境相关组件时出现安装失败的情况,那么可在换源后再尝试安装。除了使用本任务中的中科大源,读者还可以尝试使用清华源、阿里源等其他源。

🔎3.提高拓展

在Windows系统中,可以借助 phpStudy 来搭建WAMP环境。phpStudy是一个PHP调试环境的程序集成包。该程序包集成了Apache、PHP、MySQL、phpMyAdmin和ZendOptimizer,支持一次性安装,无须配置即可使用,方便用户搭建本地网站,调试PHP环境。

读者可从phpStudy的官网中下载Windows版的phpStudy客户端。以下载phpStudy 2018版(Windows)为例,单击 "下载" 按钮,即可下载安装包,如图3-8所示。

安装 phpStudy2018.exe,选择安装文件夹(文件夹的名称不能包含汉字或者空格 ),安装完成后在安装目录中双击运行 phpStudy.exe,单击 "启动" 按钮即可启动Apache和MySQL,如图3-9所示。

单击 "切换版本" 可以切换PHP版本,无特殊需求选择默认选项即可。单击 "其他选项菜单" 中的 "网站根目录" ,打开网站根目录,如图3-10所示,源码文件夹是 WWW,网站源码都放置在该文件夹下。

可在 WWW 目录中编写PHP文件或放置网站源码进行网站搭建。在网站的根目录中,创建 test.php 文件并写入以下代码:

php 复制代码
<?php phpinfo(); ?>

在浏览器中访问 http://127.0.0.1/test.php,从图3-11中可以看到,已经成功解析PHP的 phpinfo() 函数。

至此,WAMP环境搭建完毕

相关推荐
晴天168 分钟前
前端虚拟滚动(虚拟列表)原理与实战
前端
晴天1622 分钟前
前端 RAIL 性能模型实战分享-Day37
前端
变与不变80624 分钟前
JS作用域,作用域链
前端·javascript·es6
知兀29 分钟前
Tailwindcss报错:没有与此调用匹配的重载
前端·c++·tailwindcss
晴天1635 分钟前
Chrome WebMCP 让网站学会向 AI「自我介绍」
前端·人工智能·chrome
黎阳之光40 分钟前
AI黑光相机|赋能低空全域感知,筑牢低空经济全天候视觉防线
人工智能·物联网·算法·安全·数字孪生
雪芽蓝域zzs42 分钟前
二十一节:进阶:用户列表批量删除功能
前端·javascript·vue.js
研☆香1 小时前
可选链运算符和空值合并运算符的使用
前端·javascript·vue.js
木卫四科技1 小时前
Agent Supply Chain Security:MCP、Skills 与 AI Agent 软件供应链安全新边界 | 木卫四科技
大数据·人工智能·安全·ai-bom·robot security·机器人安全·具身安全
leeyi1 小时前
SSE 到了浏览器会怎样:解析、重连与中止(第105篇)
前端