1. 实验说明:web服务器一般指网站服务器,是指驻留于上某种类型计算机的程序,可以处理浏览器等web客户端的请求并返回相应响应,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。目前最主流的三个web服务器是apache、 nginx 、iis。我们一般使用的是iis。本章节将带大家学习如何在centos7上搭建apache服务器

2. 实验环境:准备好一台centos7虚拟机,正确配置好本地软件仓库、挂载光盘文件并安装并安装补全增强型工具和vim文本编辑器,手动配置ip地址。

客户端直接使用物理机即可。

3. 进行实验

首先安装软件包

输入以下代码进行安装

yum -y install httpd.x86_64

新建html网页文件并给网页文件增添内容,默认html网页文件存放在/var/www/html/文件夹下

使用touch命令新建名为index.html的网页文件

这里有的同学可能就要问了,之前新建命令不是用的mkdir吗,怎么到这里就是touch了

4. mkdir和touch命令的区别

其实他们之间的区别非常简单好记

touch能够新建文件,mkdir用来新建文件夹

编辑新建好的网页文件,使用echo命令增添一些内容,内容自定,例如我增添的内容为“centos apache”

echo centos apache >> /var/www/html/index.html

在这里使用“>”或是“>>”都可以,但是建议大家使用“>>”,毕竟“>”使用不当全部覆盖可不是闹着玩的。

也可以使用vim编辑器在文档中进入编辑视图再增添内容。

5. 修改默认网站配置文件

因为要做的修改是需要全部手动写入的,所以进入文件后直接移动到文件末行再进行编辑

添加以下内容

<virtualhost *:80>

servername 192.168.159.128

<location />

require all granted

</location>

</virtualhost>

保存并退出

重启服务

查看服务状态是否正常

如下图,服务是正常运行的,希望你们都是和我一样的绿色而不是红色的。

6. 使用curl命令在本机访问网站

此时在本机上是能够正常访问的

7. 在物理机上访问

首先在物理机上测试与apache服务器之间的icmp通信情况

再进行网站访问

在浏览器网址搜索中输入http://192.168.159.128

此时是无法访问的

8. 解决并验证

有的同学可能就已经知道了无法访问的原因是因为防火墙原因

此时我们回到服务器上,在防火墙规则中放行http服务

输入如下代码放行http服务并重新加载防火墙

firewall-cmd –permanent –add-service=http

firewall-cmd –reload

这时我们再回到物理机上重新访问一次

ok,访问成功,到这里一个简单的apache服务器就搭建起来了

9. 代码讲解

virtualhost *:80 设置网站默认访问端口为80

servername 192.168.159.128 设置网站域名为192.168.159.128,这里也可以使用dns域名作为网站域名,感兴趣的同学可以试一下。

require all granted 允许所有人访问

curl命令

简单解释为

在linux中curl是一个利用url规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。