上一篇我们详细演示了httpd虚拟主机下的简单的配置,今天将对其配置将进一步的深入演示(在之前的配置的基础上进行用户认证等的配置实例)

--------目的对与b.org的访问,拒绝192.168.1.100这个地址访问------

预期目标192.168.1.100被拒绝访问www.b.org,其他主机可正常访问

(这里我们拒绝的是拒绝本地地址访问来验证)

进入配置文件进行相应的编辑配置

#vim/etc/httpd/conf.d/virtual.conf

关于apache虚拟主机深入配置实例_第1张图片

#httpd-t

#servicehttpdrestart(删除默认的welcome.conf以便实验结果能清晰验证)

185152348.png

实验结果的对比:

1.本地访问:

关于apache虚拟主机深入配置实例_第2张图片

2.使用VM去访问这个地址(VM不能解析,添加一条解析信息)

#vim/etc/hosts

192.168.1.107www.a.org

192.168.1.107www.b.org

关于apache虚拟主机深入配置实例_第3张图片

#elinkshttp://www.b.org

185239235.png

-----目的基于用户验证来访问-----------

预期的目标:用户访问的时候需要提供密码帐号才能访问

进入配置文件做出相应的配置编辑(地址www.a.org上做验证)

#vim/etc/httpd/conf.d/virtual.conf

/www/a.org">

Optionsnone

AllowOverrideauthconfig--某个文件密码

AuthTypebasic--设置基本用户认证类型

AuthName"Restrictarea."--名字的设定

AuthUserFile"/etc/httpd/.htpasswd"---指定认证用户的文件的目录路径

Requirevalid-user---允许哪些用户(这里指定的所有)

关于apache虚拟主机深入配置实例_第4张图片

认证用户我们没有创建锁指定的那个文件,我们需要创建文件,用户和密码

-c首次创建需要,-m指定密码以MD5存放-D删除用户)

#htpasswd-c-m/etc/httpd/.httpasswdtom

#htpasswd-m/etc/httpd/.httpasswdjerry

#httpd-t

关于apache虚拟主机深入配置实例_第5张图片

#servicehttpdrestart

实验结果验证:

本地访问www.a.org

关于apache虚拟主机深入配置实例_第6张图片

-------目的:用户访问不存在的虚拟主机的地址的时候返回自己设置的默认页面

预期目标:成功跳转到自己设置的默认主页面

(前提:这个需要设置在自己配置文件的最上面)

#vim/etc/httpd/conf.d/virtual.conf

4

ServerName_default_

DocumentRoot"/www/default"

关于apache虚拟主机深入配置实例_第7张图片

#mkdir/www/default

#vim/www/default/index.html

welcometolinus

#httpd-t

#servicehttpdrestart

关于apache虚拟主机深入配置实例_第8张图片

实验结果验证

本地访问192.168.1.107查看页面显示

关于apache虚拟主机深入配置实例_第9张图片

关于apache虚拟主机深入配置实例_第10张图片

至此apache的相关常见配置实例完成!

附上自己整个配置时自己编辑的配置文件

NameVirtualHost192.168.1.107:80

ServerNamehello.magedu.com
DocumentRoot"/www/magedu.com"


ServerName_default_
DocumentRoot"/www/default"


ServerNamewww.a.org
DocumentRoot"/www/a.org"

Optionsnone
AllowOverrideauthconfig
AuthTypebasic
AuthName"Restrictarea."
AuthUserFile"/etc/httpd/.htpasswd"
Requirevalid-user


ServerNamewww.b.org
DocumentRoot"/www/b.org"

Optionsnone
AllowOverridenone
Orderdeny,allow
Denyfrom192.168.1.100


ServerNamewww.b.net
DocumentRoot"/www/b.net"