试验5http服务估计时间: 1个小时目标: 建立基本的拥有cgi的具有虚拟主机的web服务器试验的起点: 标准的red hat linux安装在
整个试验中,主机与域名取决于您的机器的ip地址.如果下面的试验出现了x字样的名称,您应该把x字样的名称替换成您的工作站的号码(您的ip地址的最后
一个部分).例如,如果您的工作站的ip的地址是192.168.0.3,您应该将stationx.domainx.example.com转换成
station3.domain3.example.com.将数据包过滤设定为无效状态.在本次试验开始之前,请
您确保您的主机上的所有包过滤已被关闭.缺省的安装将会有一个文件叫做“/etc/sysconfig/iptables”,该文件配置了iptable
的功能.运行“chkconfig iptables off”.为了去除空间中所有的规则,运行“service iptables stop”步骤1:服务的安装与基本的配置场景/故事您的组织需在一个小时内要一个web服务器,拥有充足的cgi的能力比国内且具有为不同的虚拟主机提供不同的内容服务.任务:1. 需要如下的软件包:httpd与httpd-manual.如果需要的话,从cd或者ftp://server1/pub/redhat/rpms安装并....使用chkconfig 来启动服务.2. 启动httpd服务使用缺省的配置:service httpd restart3. 检查在文件/etc/httpd/conf/httpd.conf中的documentroot项目与下面的一样documentroot /var/www/html4. 开启一个web浏览器并且设定url到:http://stationx.example.com如果您的浏览器在工作,您将看到缺省的服务器的索引页面.注意该文件并不是所存储的html文件,而是服务器在这些目录中没有缺省的index.html文件的时候自动生成的.5.建立一个新的目录层次与一些新的内容mkdir –p /var/www/virtual/wwwx.example.com/htmlcd /var/www/virtual/wwwx.example.com/htmlcat > index.html <wwwx.example.comeof(这建立一个只有一行的html文件)6.在/etc/httpd/conf/httpd.conf尾部加入以下几行:namevirtualhost 192.168.0.x
servername wwwx.example.com serveradmin webmaster@wwwx.example.com
documentroot /var/www/virtual/wwwx.example.com/html errorlog
logs/wwwx.example.com-error_logcustomlog
logs/wwwx.example.com-access_log combined options indexes includes7.确保您的dns系统哦功能能够解析您的虚拟主机的名称.dig wwwx.example.com8. 重新启动httpd: service httpd reload9.在您的web浏览器并且设定url到新的虚拟主机:http://wwwx.example.com您看到您自己定义的页面了么?步骤2:使用cgi任务1. 在步骤1设定的 块中增加一行:scriptalias /cgi-bin/ /var/www/virtual/wwwx.example.com/cgi-bin/以上仅为一行并且在httpd.conf中不换行,注意给上面的两个元素之间留出空格.2. 建立目录,然后在里面建立文件叫做test.sh 包含以下内容:/var/www/virtual/wwwx.example.com/cgi-bin/test.sh#!/bin/bashecho
content-type: text/html;echo my username is:whoamiechoecho my id
is:idechoecho my shell setting are:setechoecho my environment variable
are:envechoecho here is /etc/passwdcat /etc/passwdecho3.通过把您的浏览器指向下面的地址尝试执行该cgi脚本http://wwwx.example.com/cgi-bin/test.sh为什么这个脚本不执行?检查日志文件/avr/log/httpd/获得信息来帮助你找到答案.(您是否计的重新启动或者重新载入服务器?)4. 使得该脚本对于用户,组与其他可读并且可执行:chmod 555 test.sh现在脚本能够执行麽?挑战1:为您的web站点的文档提供安全访问任务:在wwwx.example.com的文档的根目录建立一个文件叫做.htaccess,并采用以下内容:/var/www/virtual/wwwx.example.com/html/.htaccessauthname “restricted stuff”authtype basicauthuserfile /etc/httpd/conf/wwwxx.htpasswdrequire valid-user2.建立您的域的密码文件.该文件必须被apache组可读.... 下一页