大家好,如果您还对如何为网络服务器配置虚拟主机? 《步骤示范》不太了解,没有关系,今天就由本站为大家分享如何为网络服务器配置虚拟主机? 《步骤示范》的知识,包括的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
默认情况下,Apache只有一个站点目录Chwebapache2.4hndoes,在学习过程中,您可能需要使用多个站点。为此,您可以使用Apoche的虚拟主机功能来实现多个站点。
Apache 的默认站点是使用IP 地址127.0.0.1 或主机名localhost 访问的。两种方法访问的站点目录都是C:webapache2.4htdoes。通过虚拟主机,您可以使用定制的域名进行访问,并且可以为不同的域名指定不同的站点目录。
由于申请真实域名需要一定的费用,为了方便开发,可以通过更改hosts文件在本地解析任意域名。在Windows系统中以管理员身份打开命令行,然后执行以下命令调用记事本编辑hosts文件。
notepad C: Windowa\Systen32\drivers\etc\hosts 打开hosts文件后,在文件中配置IP地址与域名的映射关系,如下。
127.0.0.1 ww.php.test127.0.0.1 vww.adnin.teat 上述配置表示访问www.php.test或www.admin.test这两个域名时,会自动解析为IP地址127.0.0.1 0.1 。经过上述配置后,您可以直接在浏览器上输入域名来访问本地Web服务器。需要注意的是,这种域名解析方式仅对本机有效。
通过虚拟主机可以在一台服务器上部署多个网站。虽然服务器的IP地址相同,但是当用户使用不同的名称访问时,不会访问同一个网站。
让我们开始学习如何配置Apache虚拟主机。具体步骤如下。
(1)修改httpl.conf文件,启用虚拟主机配置文件。
在Apache的配置文件httpd.conf中找到如下配置,删除“#”并取消注释。
#include conf/extra/httpd-vhosts.conf 在上面的配置中,lnclode表示从另一个文件加载配置,后面是配置文件的路径。
(2) 在htpd-vhosts.cof配置文件中配置虚拟主机。
打开confestra/httpd-vhosts.conf配置文件,删除文件中原来的配置或者全部用“#”注释掉,然后重写配置,如下:
virtualhoat·:80 DocumentRoot ‘C:/veb/apache2.4/htdoca’ ServerName localhoat/Virtualhoat*:80Virtualhoat*:80 DocumentRoot ‘C:/web/apache2.4/htdocs/vnnv.php.test’ ServerNane ww.php.test/Virtualhoat 上面该配置实现了两个虚拟主机,分别是localhost和www.php.test,并且这两个虚拟主机的站点目录被指定在不同的目录中。 “*:80”代表任意IP的80端口,“DocumentRoot”代表文档根目录,“ServerName”代表服务器名称。
(3)在Apache的hadoes目录下创建www.php.test目录,并在该目录下放置一个简单的网页。将文件命名为index.html。网页内容为“Welcome www.php.dest”。
(4)修改Apache配置文件后,重启Apache服务使配置文件生效。
(5)在浏览器中访问这两个虚拟主机,会看到两个不同的网站,如图1所示。
图1 访问虚拟主机
访问控制
Apache的主配置文件hupd.conf中,默认添加了一些目录配置,这些配置都写在Directory指令中。为了方便查看,下面摘录这部分配置。
# 第一个配置目录/目录AllowOverride none Require all denLed #第二个配置目录’${SRVROOT}/htdocs Options Indexes FollowSymLinks AllowOverride None roquire all granted/directory 上面的代码中有两个目录配置,第一个是第一个一个是根目录配置,第二个是Apache安装目录下的htdoes目录的配置。当用户访问一个目录时,Apache会查找该目录的配置以及所有上层目录的配置。该目录的配置会覆盖上层目录的配置。
第一个配置中的Reqpuire all returned 表示阻止所有访问,第二个配置中的Require all grant 表示允许所有访问。另外,还可以配置为Require local,即只允许本地访问。
当用户访问htdoes目录时,第二个配置中的Require all grant将覆盖一开始的Reqpuire allied,因此允许访问htdoes目录。当用户访问其他目录时,由于其他目录没有配置Require allgranted,因此会被第一个配置阻止访问。
配置虚拟主机时,将wwwphp.test的站点目录放在htdoes目录下,这样无需配置访问权限即可访问该站点。
AlowOvemride mone 表示不修改分布式配置文件。分布式配置文件是指分布在各个目录下的配置文件,文件名为“.htaccess”。如果允许Apache读取分布式配置文件,可以修改为AllowOveride All。 Apache读取分布式配置文件时,会从磁盘根目录搜索到当前访问的目录。如果这些目录中有“htaccess”文件,则会读取它们。子目录的配置会覆盖上层目录的配置。分布式配置文件的优点是配置修改后无需重启Apache服务即可生效;缺点是读取这些文件会增加服务器的负担并降低性能。
options lndeses表示启用Apache的目录浏览功能。启用该功能后,如果用户访问的目录中没有默认索引页(DirectoryIndex)指定的文件,则会显示文件列表。安装PHP时,DirectoryIndex已经配置好了。 Apache会在当前访问的目录中搜索index.php和index.himl。如果两个文件都不存在,则将打开文件列表。
开启文件列表可以更方便地查看服务器上的文件,但是会降低服务器的安全性,导致服务器上的重要文件被随意访问。如果需要关闭此功能,可以将“Indexes”更改为“-Indexes”。
Options索引后面还有FollowSymLinks,表示是否允许使用符号链接。符号链接在Limux系统中比较常见,可以根据实际需要进行配置。
virtualhost *:80=” DocuentRoot ‘C:/web/www/wnw.adnin.test’ ServerName www.adnin.test/virtualhostdirectory ‘c:=” web=” www’=” 选项-indexes AllowOverride All 需要local/目录(2) 创建Cloweblowlwww.admnin.test目录,然后在该目录下创建index.html文件。该文件的内容是“Weloome
索引.html’。
(3)在浏览器中访问“www.admin.lesi”进行测试。效果如图2所示。
图2 测试访问权限
从图2可以看出,Apache没有显示文件列表,并返回了Forbidkdlen错误提示。
(5) 在子目录下创建“htaccess”文件并启用目录浏览功能。具体代码如下。
选项索引图3 目录浏览效果
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/176666.html
用户评论
棃海
终于明白了为啥我的网站一直访问不了,原来虚拟主机配置没搞对呀!教程清晰易懂,一步步跟着做,现在网站访问OK了,太感谢了!
有5位网友表示赞同!
墨染殇雪
想自己搭建一个Web服务器还真不容易啊,这虚拟主机配置真是个坑。不过看完这篇总结,感觉思路豁然开朗了不少。还是需要好好学习apache才行!
有11位网友表示赞同!
青墨断笺み
哈哈这个步骤真细致,我以前就摸索过虚拟主机的配置,总是卡在某一步,现在终于明白是怎么回事了!感谢分享经验!
有13位网友表示赞同!
日久见人心
说实话,这篇教程虽然很详细,我还是感觉对linux服务器的配置理解还差一些,比如修改配置文件这些步骤有点困难。希望能有更基础的入门讲解!
有7位网友表示赞同!
发型不乱一切好办
网站迁移真是头疼事,虚拟主机配置一直是让我烦恼的问题,这篇文章终于给我指明了方向!以后可以自己调配多套环境了!
有16位网友表示赞同!
ー半忧伤
我一直用的是云服务器,很少碰虚拟主机配置,看了下这个教程,发现还挺有意思的。今度(以后)要试试搭建自己的Web空间看看。
有18位网友表示赞同!
醉枫染墨
步骤很清晰易于理解,图文并茂也很不错!但有些专业术语还是需要查阅文档更深入学习才能完全掌握。希望后续可以出更多相关的实践案例分享!
有15位网友表示赞同!
敬情
虚拟主机配置太复杂了,这篇文章也只介绍了一种主流的方法,还有其他不同的配置方案吗?希望能有更全面的教程.
有7位网友表示赞同!
青瓷清茶倾城歌
这个教程太棒了!终于不用每次都对着配置文件一头雾水!
有10位网友表示赞同!
爱你心口难开
我之前用的是VPS,学习虚拟主机也是为了更好地理解服务器的运作原理。这份教程对基础的讲解还不错,但对于更高级的操作可以再深一些!
有18位网友表示赞同!
孤廖
虚拟主机的配置真的太复杂了!我感觉自己还是得花更多时间来学习和实践才能掌握!希望以后会有其他更易懂的教程发布!
有5位网友表示赞同!
心亡则人忘
这篇文章把虚拟主机配置讲得很清晰,特别是对于新手来说很有帮助!强烈推荐给想要了解网络服务的同学!
有5位网友表示赞同!
一笑抵千言
我试过照着你的步骤执行了,但是发现问题还是没解决。可能是我的服务器环境不一样吧?希望可以提供更多针对不同环境的解决方案。
有9位网友表示赞同!
有一种中毒叫上瘾成咆哮i
虚拟主机配置真是一门技术活,学习完这篇教程后感觉自己进步了不少。期待后续文章分享更多的Web服务器管理技巧!
有19位网友表示赞同!
从此我爱的人都像你
这个教程对linux系统命令的讲解也很详细,我以前不太熟悉这些命令,现在终于学会了!
有20位网友表示赞同!
何必锁我心
虚拟主机配置虽然复杂,但这篇文章步骤很清晰,很容易理解。只要一步步跟着做就能成功!
有12位网友表示赞同!
你很爱吃凉皮
学习的过程中,发现有些配置需要根据具体的需求进行调整,这篇教程的讲解比较全面,能帮助我更好地了解虚拟主机的设计思路。
有17位网友表示赞同!