关于apache虚拟主机htttpd的配置实例(更新中)
前提:
首先使用虚拟主机我们需要关闭取消中心主机
#vim/etc/httpd/conf/httpd.conf中查找DocumentRoot加井号注释掉
其次我们对虚拟主机相关配置我们可以在此文件的最后编辑或者另新建一
文件编辑(我使用的后者)
最后要确保httpd的rpm包已经正确安装好了
前提工作做好之后,我们就开始进行初步简单的文件配置
编辑配置文件:
在/etc/httpd/conf.d/下创建一个以*.conf结尾的文件,在这个文件中我
们进行配置,
#vim/etc/httpd/conf.d/virtual.conf
<VirtualHost192.168.1.103:80>指定虚拟主机的IP和端口
ServerNamehello.magedu.com这个可以根据自己设置名字
DocumentRoot"/www/magedu.com"指定打开网页显示的配置文件位置
</VirtualHost>
使用httpd-t检测下所需要的目录是否存在
#httpd-t
如果显示如图的我们需要创建缺省的文件和所需要显示的主页面
#mkdir/www/magedu.com
#vim/www/magedu.com/index.html
简单编辑<h1>magedu.com</h1>
再次检查语法
#httpd-t
#servicehttpdrestart
接下来,我们要做对apache的做出基于IP,域名,端口配置实例
基于IP访问主机
#vim/etc/httpd/conf.d/virtual.conf
添加
<VirtualHost192.168.1.107:80>2
ServerNamewww.a.org
DocumentRoot"/www/a.org"
</VirtualHost>
#httpd-t
#mkdir-pv/www/a.org
#vim/www/a.org/index.html(创建主页面)
因为我们没有两个地址,所以需要为其设置一个别名
#ipaddradd192.168.1.107/24deveth0
#ipaddrshow(查看添加的情况)
#servicehttpdrestart
验证:
基于主机名的访问
#vim/etc/httpd/conf.d/virtual.conf
在首行添加
NameVirtualHost192.168.1.107:80
<VirtualHost192.168.1.107:80>4
ServerNamewww.b.org
DocumentRoot"/www/b.org"
</VirtualHost>
#mkdir/www/b.org
#vim/www/b.org/index.html
<h1>b.org</h1>
注意:需要本地主机能解析这两个地址,我们需要编辑主机的host文件
文件是隐藏的,我们设置下让其显示
(或者自己建立一个DNS服务器,把那两个地址都囊括进去也可)
所在路径C/windows/system32/drivers/etc/host
打开添加需要的条目:
例子:192.168.1.107www.a.org
192.168.1.107www.b.org
ping下看是否解析
然后在浏览器上查看实验结果
基于端口访问主机
#vim/etc/httpd/conf/httpd.conf编辑主配置文件
添加监听的端口(我们用的是8080)
#vim/etc/httpd/conf.d/virtual.conf
编辑(在此前的里面添加)
<VirtualHost192.168.1.103:8080>3
ServerNamewww.b.net
DocumentRoot"/www/b.net"
</VirtualHost>
#mkdir/www/b.net
#vim/www/b.net/index.html
<h1>b.net</h1>
#servicehttpdrestart
查看实验结果
即基于IP域名端口的访问介绍已经完成,之后将更新基于用户认证,提供密码访问和对特定IP端访问限制等的实例!
以下附上自己编辑的配置文件:(中间的细节需要各位留意)
<VirtualHost192.168.1.103:80>
ServerNamehello.magedu.com
DocumentRoot"/www/magedu.com"
</VirtualHost>
<VirtualHost192.168.1.107:80>
ServerNamewww.a.org
DocumentRoot"/www/a.org"
</VirtualHost>
<VirtualHost192.168.1.107:80>
ServerNamewww.b.org
DocumentRoot"/www/b.org"
</VirtualHost>
<VirtualHost192.168.1.103:8080>
ServerNamewww.b.net
DocumentRoot"/www/b.net"
</VirtualHost>