Apache从入门到精通

Apache从入门到精通

一、Apache概述

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。

Apache基础信息:

主配置目录 /etc/httpd/conf
主配置文件 /etc/httpd/conf/httpd.conf
子配置目录 /etc/httpd/conf.d
字配置文件 /etc/httpd/conf.d/*.conf
默认发布目录 /var/www/html/
默认发布文件 index.html
端口 80
默认安全上下文 httpd_sys_content_t
程序开启默认用户 apache
apache日志 /etc/httpd/logs/*

注意: apache的默认端口为80

二、Apache部署

实验环境:
为了实验有一个纯净的环境,我们将desktop进行reset,然后配置网络,以及yum源,最后在真机ssh连接虚拟机,具体的设置就不进行操作了,下面将进行具体的实验,如下所示:

实验操作如下:
1.搜索并安装软件,如下图所示:
Apache从入门到精通
Apache从入门到精通
Apache从入门到精通
2.开启服务,并使火墙永久允许http服务,如下图所示:
Apache从入门到精通
Apache从入门到精通
3.由于man不能查看http的用法,所以下载http手册,如下所示:
Apache从入门到精通
4.编辑默认发布文件,如下图所示:
Apache从入门到精通
Apache从入门到精通
5.重启服务,如下图所示:
Apache从入门到精通
6. 测试
在浏览器中数如72.25.254.112会出现下面的界面,如下所示:
Apache从入门到精通在浏览器中数如72.25.254.112/manual,会出现下面的界面,如下所示:
Apache从入门到精通
三、修改Apache基本配置

1. 修改默认端口80

修改端口为8080:
1.查看selinux的状态,如果查看发现为enforcing,不用修改,如下图所示:
Apache从入门到精通
2.修改配置文件中的端口为8080,如下所示:
Apache从入门到精通
3.重启服务,查看端口,并添加火墙允许8080端口,如下所示:
Apache从入门到精通
4.编辑发布文件,如下所示:
Apache从入门到精通
5.重启服务,如下所示:
Apache从入门到精通
6.测试,如下所示:
Apache从入门到精通
修改端口为6666:
方法一:
1.在selinux的状态为enforcing下,查看防火墙允许的http没有6666端口,添加端口,如下图所示:
Apache从入门到精通
2.进入配置文件,更改端口为6666,如下所示:
Apache从入门到精通
3.重启服务,如下图所示:
Apache从入门到精通
4.测试,如下图所示:
Apache从入门到精通
方法二:
1.查看6666端口,发现没有被使用,如下所示:
Apache从入门到精通
2.在配置文件中修改端口为6666,如下所示:
Apache从入门到精通
3. 添加防火墙的6666端口,重启服务,发现失败,如下所示:
Apache从入门到精通
4.更改内核防火墙的状态为警告模式,发现服务能重启起来,如下图所示:
Apache从入门到精通
5.测试,如下图所示:
Apache从入门到精通
2. 修改默认发布文件

情况一:配置文件中只有一个发布文件
1.进入到默认的发布目录下,将默认发布文件移走,如下图所示:
Apache从入门到精通
2.编辑新的发布文件,如下所示:
Apache从入门到精通
3.进入配置目录,更改默认发布文件,并将端口改回来,如下所示:
Apache从入门到精通
Apache从入门到精通
Apache从入门到精通
4.重启服务,如下所示:
Apache从入门到精通
5.测试,如下所示:
Apache从入门到精通
情况二:配置文件中只有两个发布文件

1.将移走的发布文件移回来,如下图所示:
Apache从入门到精通
2.编辑配置文件中的发布文件,并确认是否为两个发布文件,如下所示:
Apache从入门到精通
3.编辑发布文件,如下所示:
Apache从入门到精通
Apache从入门到精通
4.重启服务,如下所示:
Apache从入门到精通
5.测试,如图所示:
Apache从入门到精通
注意:当有两个发布文件时,哪一个在前就先访问哪一个

3. 修改默认发布目录

1.建立一个发布目录,并进入到该发布目录下,编写发布文件,如下所示:
Apache从入门到精通
Apache从入门到精通
2.更改发布目录,并将原来的/var/www/html注释掉,如下所示:
Apache从入门到精通
Apache从入门到精通
3.重启服务,去测试发现访问不到,如下所示:
Apache从入门到精通
Apache从入门到精通
4.查看并更改安全上下文,如下所示:
Apache从入门到精通
5.再次去测试,发现能访问到,如下图所示:
Apache从入门到精通
四、设置Apache基于ip的访问权限

1.进入apache的配置目录,查看,并编写一个配置目录,如下所示:
Apache从入门到精通
用户访问白名单设置:Apache从入门到精通
Apache从入门到精通
在172.25.254.112上测试,发现能测试,如下所示:

Apache从入门到精通
在172.25.254.12上测试,发现不能测试,如下所示:
Apache从入门到精通
用户访问黑名单设置:Apache从入门到精通
Apache从入门到精通
在172.25.254.112上测试,发现不能测试,如下所示:
Apache从入门到精通
在172.25.254.12上测试,发现能测试,如下所示:Apache从入门到精通
五、如何让一个Apache发布多个文件

1.进入apache的目录中查看,并在kkk.conf的文件中进行编写,如下所示:
Apache从入门到精通
Apache从入门到精通
2.建立子目录,如下所示:
Apache从入门到精通
3.编辑子发布文件,如下所示:
Apache从入门到精通
Apache从入门到精通
Apache从入门到精通
4.查看子发布文件的内容,如下所示:
Apache从入门到精通
5.在真机中进行文件的本地解析,如下图所示:
Apache从入门到精通
Apache从入门到精通
6. 重启服务,如下图所示:
Apache从入门到精通
7.测试,如下图所示:Apache从入门到精通
Apache从入门到精通
Apache从入门到精通
六、Apache基于用户的认证

1.创建认证用户,如下图所示:
Apache从入门到精通
2.进入配置目录,编辑配置文件,如下所示:
Apache从入门到精通
Apache从入门到精通
3.重启服务,如下图所示:
Apache从入门到精通
4.测试:
当我们允许admin访问的时候,输入lee,发现并不能访问,如下所示:
Apache从入门到精通
Apache从入门到精通
当我们允许admin访问的时候,输入adamin,发现能访问,如下所示:
Apache从入门到精通
Apache从入门到精通
5.更改配置文件为,加密用户都可以访问,如下所示:
Apache从入门到精通
6.再次重启服务,如下所示:
Apache从入门到精通
7.测试,如下:
此时我们发现lee和admin都可以访问
Apache从入门到精通
Apache从入门到精通
Apache从入门到精通Apache从入门到精通
七、Apache的四种支持语言

1. html语言
由于我们前面用的就是html的语言,所以就不在此进行操作了,进行其他三种语言的操作如下:

2. php语言
1.进入默认发布目录,查看,如下所示:
Apache从入门到精通
2.编写php的文件,如下所示:
Apache从入门到精通
3.进入配置文件,添加发布文件,并查看发布文件是否为/var/www/html,如果不是则注释掉自己的发布目录,改为默认的,如下所示:
Apache从入门到精通
Apache从入门到精通
Apache从入门到精通
4.重启服务,如下所示:
Apache从入门到精通
5.测试,如下所示:
Apache从入门到精通
3. cgi语言

1.在默认发布目录下,建立一个cgi的目录,如下所示:
Apache从入门到精通2.编写cgi的发布文件,如下所示:
Apache从入门到精通
3.给文件可执行的权力,并看是否能运行,如下所示:
Apache从入门到精通
4.进入配置文件,进行如下操作:
Apache从入门到精通
5.重启服务,如下所示:
Apache从入门到精通
6.更改cgi的安全上下文,如下所示:
Apache从入门到精通
7.测试,如下:
Apache从入门到精通
4. wsgi语言

1.搜索并安装wsgi,如下所示:
Apache从入门到精通
Apache从入门到精通Apache从入门到精通
2.上传webapp.wsgi到/var/www/cgi-bin/,如下所示:
Apache从入门到精通
3.编辑kkk.conf文件,如下所示:
Apache从入门到精通
4.重启服务,如下所示:
Apache从入门到精通
5.在真机中更改本地解析文件,如下图所示:
Apache从入门到精通
Apache从入门到精通
6.再次重启服务,如下:
Apache从入门到精通
7.测试,如下所示:
Apache从入门到精通
八、https的实现

1.安装mod_ssl和crypto-utils,如下所示:
Apache从入门到精通Apache从入门到精通Apache从入门到精通
Apache从入门到精通
2.输入genkey www.westos.com,在出现的界面进行以下操作:
Apache从入门到精通
按"enter"进入下一步,如下:
Apache从入门到精通
选择锁的大小为1024,点击下一步进入以下界面:
Apache从入门到精通
1024的大小不够,自动进入下一步,改为2048继续下载,如下所示:
Apache从入门到精通
在下面的步骤中选择"No"按"enter进入下一步,因为yes是收费的,所以选no,如图所示:Apache从入门到精通
Apache从入门到精通
编辑基本信息,并按下一步,如下所示:
Apache从入门到精通
3.加密完成以后会出现以下的界面,然后进入加密文件,如下图所示:
Apache从入门到精通
4.编辑加密文件,如下所示:
Apache从入门到精通5.重启服务,并关闭火墙,如下所示:
Apache从入门到精通
6.测试,如下所示:
在浏览器输入172.25.254.112会出现让我们添加证书的界面,如下所示:

Apache从入门到精通
在添加证书界面,点击advanced出现以下界面,如图所示:
Apache从入门到精通
点击左下角的confirm security Exception之后证书添加成功,在浏览器的设置中可以查看到我们添加的证书,如下图所示:
Apache从入门到精通
最后去浏览器输入https://172.25.254.112发现可以访问到

九、https虚拟主机的设定以及网页重写

1.进入httpd的配置目录中,建立一个登陆的目录,并进入该目录下的文件,如下图所示:
Apache从入门到精通
2.编写发布的文件,如下所示:
Apache从入门到精通
3.编写子配置文件,如下所示:
Apache从入门到精通
Apache从入门到精通
4.重启服务,如下所示:
Apache从入门到精通
5.在真机中进行本地文件解析,如下图所示:
Apache从入门到精通
Apache从入门到精通
6.测试
在真机中输入login.westos.com会自动出现https://,如下图所示:
Apache从入门到精通

一、Apache概述

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。

Apache基础信息: