reko_3 发表于 2018-11-24 12:37:32

基于Apache平台认证的配置分析

一、概述Apache

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

对于apache而言,主机分为中心主机和虚拟主机【请注意:两者不能同时使用】

要想使用虚拟主机必须取消中心主机,在配置文件/etc/httpd/conf/httpd.conf注释中心主机的DocumentRoot即可。

Apache认证:基于IP地址、基于端口、基于主机域名,同时还可以给http定义路径别名和控制用户访问查看http的工作状态等内容;

二、基于IP地址配置实例分析

前提:在一台虚拟机中设定两个IP地址(也可以在两台虚拟机中操作,我主要是为了配置方便,可以根据需要自己定义),在配置文件中设置端口号都为80;这里我使用yum源下载httpd软件包,安装httpd软件包过程我就不详细演示了,yum源下载路径:ftp://172.16.0.1/pub/gls/server.repo

规划如下:

IP1:172.16.52.2

IP2:172.16.52.4

1、 设置两个IP地址


[*]#ip addr add 172.16.52.4/16 dev eth0
[*]1: lo:mtu 16436 qdisc noqueue   
[*]    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
[*]    inet 127.0.0.1/8 scope host lo
[*]2: eth0:mtu 1500 qdisc pfifo_fast qlen 1000
[*]    link/ether 00:0c:29:6a:f7:98 brd ff:ff:ff:ff:ff:ff
[*]    inet 172.16.52.2/16 brd 172.16.255.255 scope global eth0
[*]inet 172.16.52.4/16 scope global secondary eth0

2、创建并编辑基于IP地址的文件


[*]#vim /etc/httpd/conf.d/vitual   ####可以使用提供的配置文件,我为了方便,自己创建一个新的文件
[*]
[*]    ServerName www1.magedu.com
[*]    DocumentRoot "/web/vhosts/www1"
[*]CustomLog /var/log/httpd/www1.access combined
[*]
[*]
[*]    ServerName www2.magedu.com
[*]    DocumentRoot "/web/vhosts/www2"
[*]CustomLog /var/log/httpd/www2.access combined
[*]
[*]保存退出

3、 创建、编辑和页面的根目录


[*]#mkdir /web/vhosts/www1 –pv
[*]#vim /web/vhosts/www1/index.html
[*]www1.magedu.com
[*]保存退出
[*]#vim /web/vhosts/www1/index.html
[*]www2.magedu.com
[*]保存退出

4、创建日志文件


[*]#cd /var/log/httpd/
[*]#touch www1.access
[*]#touch www2.access
[*]#service httpd restart

5、测试172.16.52.2站点



6、测试172.16.52.4站点





三、基于主机域名配置实例分析

说明:我使用172.16.52.2地址对虚拟主机域名演示

规划如下:

域名1:www1.magedu.com

域名2:www2.magedu.com

1、创建并编辑基于主机域名的文件




[*]#vim /etc/httpd/conf.d/vitual
[*]NameVirtualHost 172.16.52.2:80
[*]
[*]    ServerName www1.magedu.com
[*]DocumentRoot "/web/vhosts/www1"
[*]CustomLog /var/log/httpd/www1.access combined
[*]
[*]
[*]    ServerName www2.magedu.com
[*]DocumentRoot "/web/vhosts/www2"
[*]CustomLog /var/log/httpd/www2.access combined
[*]
[*]保存退出

  2、在物理机的hosts文件中添加域名和对应IP地址


[*]物理机hosts文件路径:点击“本地磁盘C”—>Windows—>System32—>drivers—>etc—>hosts
[*]添加:
[*]172.16.52.2    www1.magedu.com
[*]172.16.52.2    www2.magedu.com
[*]保存退出
[*]######在IE浏览器上测试站点,对虚拟主机进行域名解析

3、 创建、编辑和页面的根目录以及创建文件,这个过程和基于IP地址操作相同,我这里就不演示了,最后一定不要忘记重启服务

4、测试www1.magedu.com站点



5、测试www2.magedu.com站点






6、查看访问www1.magedu.com后生成的日志信息(我这里只演示了www1的访问日志,访问www2日志方法相同)



四、基于端口配置实例分析


说明:我这里使用172.16.52.2地址做演示,同时在配置文件中添加端口8080;

1、 添加端口8080




2、 创建并编辑基于端口的文件


[*]# vim /etc/httpd/conf.d/vitual   
[*]
[*]    ServerName www1.magedu.com
[*]    DocumentRoot "/web/vhosts/www1"
[*]
[*]
[*]    ServerName www2.magedu.com
[*]    DocumentRoot "/web/vhosts/www2"
[*]
[*]保存退出

3、创建、编辑和页面的根目录以及创建文件,这个过程和上面的操作相同,我这里就不演示了,最后一定不要忘记重启服务

4、测试172.16.52.2:80站点

  5、测试172.16.52.2:8080站点


五、定义httpd的工作状态信息并只允许指定用户访问实例分析

说明:我这里使用主机域名www1.magedu.com来查看httpd的工作状态

1、 编辑基于主机域名的文件,并在文件中添加信息


[*]# vim /etc/httpd/conf.d/vitual   
[*]NameVirtualHost 172.16.52.2:80
[*]
[*]    ServerName www1.magedu.com
[*]DocumentRoot "/web/vhosts/www1"
[*]
[*]    SetHandler server-status
[*]    Options none
[*]    AuthName "waha..."
[*]    AuthType Basic
[*]    AuthUserFile "/etc/httpd/htpasswd"    #####为指定用户创建的文件路径
[*]    Require user status      ####只指定status用户访问站点
[*]    Order allow,deny
[*]    Allow from all      #######允许所有主机访问
[*]
[*]
[*]
[*]    ServerName www2.magedu.com
[*]    DocumentRoot "/web/vhosts/www2"
[*]
[*]保存退出
[*]#service httpd restart

2、创建、编辑和页面的根目录以及创建文件,这个过程和上面的操作相同,我这里就不演示了

3、创建用户的文件和用户


[*]#htpasswd –c –m /etc/httpd/htpasswd status
[*]输入密码,这里我使用的还是status为密码
[*]#####注意:命令行中的-c选项只允许第一次创建时使用,如果第二次创建用户就不需要指定-c选项
[*]#service httpd restart

4、 使用status用户登录站点www1.magedu.com


5、用户登录后查看http的工作信息


六、定义http的路径别名实例分析


说明:我这里使用的还是172.16.52.2的地址演示

1、在配置文件中添加路径别名信息















2、创建别名目录


[*]# cd /qq/11 -pv
[*]# vim /qq/11/index.html
[*]again,again
[*]保存退出
[*]#service httpd restart


  3、测试路径别名





页: [1]
查看完整版本: 基于Apache平台认证的配置分析