扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
系统 | solaris 10 |
Apache版本 | httpd-2.2.0 |
网络接口地址 | 192.168.27.201 |
Apache的安装路径 | /usr/local/apache2/ |
虚拟机的方式端口 | 8088 |
修改主配置文件/usr/local/apache2/conf/httpd.conf。用编辑器(vi等)打开主配置文件httpd.conf,把Include conf/extra/httpd-vhosts.conf这行(大概在395行的位置)前面的注释取消,使其包含功能生效。再在主配置文件加入虚拟机的监听“Listen 192.168.27.201:8088”(第一个字母‘L’是大写的)。修改加入的内容如下所示:
|
修改虚拟机配置文件。它的目录在主配置文件httpd.conf中以包含的方式(Include)指出了路径是 /usr/local/apache2/conf/extra/httpd-vhosts.conf,如果打算用其他的文件,可以在主配置文件中重新指定。这个虚拟机配置文件是一个模版,给出了2个apache虚拟机的事例,把它们全部注释掉!注:如果是基于域名的虚拟机机制,NameVirtualHost *.80这行是必须的,因为我这里是基于端口(确切的说是基于IP地址)的虚拟机制,所以要把它注释掉。先照着模版加入下面的块到httpd-vhosts.conf:
|
然后回到apache的安装目录执行命令 bin/apachectl –t检查主配置文件语法是否正确,无误后再执行bin/apachectl –S 检查虚拟机的语法是否正确。接下来在虚拟机的根文档目录创建一个测试文档test.html,启动apache服务 bin/apachectl start&,用浏览器访问http://192.168.27.201,显示apache的默认页面,表明主配置文件是正常的;再访问http://192.168.27.201:8088/test.html.返还代码 403(禁止访问),页面内容为“你无法查看该网页…”,同样的问题已经有2个人遭遇过了,他们都一致认为,以前在apache1.3等老版本上就是这样设置的,应该不会这样呀!并且语法检查也通过了,是什么问题呢?打开主配置文件conf/httpd.conf,发现如下的块:
|
这一个块就是对目录进行访问控制的,而且设置得非常严格,因此,我们必须手动加入虚拟机目录的权限控制块,才可以让用户正常访问虚拟机的目录及页面文件。有两个地方可以加入虚拟目录访问权限控制块:主配置文件httpd.conf和虚拟机配置文件httpd-vhost.conf,加在那一个地方更合适呢?当然选虚拟机配置文件,最重要的理由是维护起来更方便,可能也涉及安全方面的问题(这个我没有做个测试)。接下来就把目录访问控制块插入到虚拟机配置文件,其形式如下:
|
完成文件,检查语法,重启apache服务,再用浏览器访问虚拟机地址,这下应该正常了。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者