湖北理工学院
实验报告
课程名称: Linux 网络环境
实验项目:配置Apache服务器
专 业:
班 级:
学 号:
学生姓名:
第二篇:Apache服务器配置实验报告
在Linux下配置Apache服务器
一、实验目的
完成本次实训,将能够:
l 配置基本的Apache服务器
l 配置个人用户Web站点。
l 配置虚拟目录别名功能。
l 配置主机访问控制。
l 配置用户身份验证功能.。
l 配置基于IP地址的虚拟主机.
二、实验环境
1、RedHat Linux4AS.
2、Apache 2.0
三、实验内容
1. 配置基本的Apache服务器
2. 配置个人用户Web站点。
3. 配置虚拟目录别名功能。
4. 配置主机访问控制。
5. 配置用户身份验证功能.。
6. 配置基于IP地址的虚拟主机。
四、实验要求
在Linux操作系统下配置Apache服务器。
五、注意事项
1. 在修配置文件下注意区分大小写、空格。
2. 在每次重新开机后都必须启动Apachec服务器。
3. 在每次修改完主配置文件后保存起来,必须重启Apachec服务器,如果不重启会导致配置无效,最终导致实验失败。
六、实验步骤
1、检测是否安装了Apache软件包:
A、首先为服务器网卡添加一个固定的IP地址。
B、在Web浏览器的地址栏中输入本机的IP地址,若出现Test Page测试页面(该网页文件的默认路径为var/www/html/index.html)如下图1所示就说明Apache已安装并已启动。
另一种方法是使用如下命令查看系统是否已经安装了Apache软件包:
[root@rhe14~]# rpm –aq | grep httpd
Httpd-suexec-2.0.52-9.ent
Httpd-manual-2.0.52-9.ent
System-config-httpd-1.3.1-1
Httpd-devel-2.0.52-9.ent
出现以上内容表明了系统已安装Apache软件包。
2、安装Apache软件包
超级用户(root)在图形界面下选择“应用程序”|“系统设置”|“添加/删除应用程序”命令,选择“万维网服务器”软件包组,在单击“更新”按钮就可以安装与Apache相关的软件包。
3、Apache的基本配置
(1)打开终端输入[root@rhe14~]# /etc/rc.d/init.d/httpd start //启动Apache
或者
[root@rhe14~]# apachectl start //启动Apache
[root@rhe14~]# apachectl stop //停止Apache服务
[root@rhe14~]# apachectl restart //重启Apache服务
[root@rhe14~]# apachectl configtest //测试Apache服务器配置语法
(2)在httpd.conf将Apache的基本配置参数修改、将一些注释的语句取消注释,或将某些不需要的参数注释掉。
(3)将包括index.html在内的相关网页文件复制到指定的Web站点根目下(var/www/html/index.html)
(4)重启httpd进程
(5) 在Web浏览器下输入配置的ip地址出现如下图2,那表明基本配置成功了:
4、配置用户个人Web站点
(1)建立dxl用户,修改其默认主目录的权限,并在其下建立目录public_html.
[root@rhe14 ~]# useradd dxl
[root@rhe14 ~]# passwd dxl
[root@rhe14 ~]# chmod 711 /home/dxl //修改权限
[root@rhe14 ~]# cd /home/dxl
[root@rhe14 ~]# mkdir public_html //在dxl下创建public_html文件
[root@rhe14 ~]# chown dxl:dxl public_html
[root@rhe14 ~]# chcon –R –h –t httpd_sys_content_t /home/*/public_html
注:上面chown 是将public_html的拥有者设置为dxl用户和dxl用户组
(2) 编辑文件/etc/httpd/conf/hpptd.conf,修改或添加如下语句:
<IfModule mod_userdir.c>
UserDir disable root //不允许root用户使用自己的站点,也将此语句注释掉
UserDir public_html // 配置对每个用户Web站点目录设置
<IfModule>
<Directory /home/*/public_html>
AllowOverride FileInfo AuthConfig Limit
Options MultiView Indexes SymLinksIfOwnerMatch IncludesNoxec
<Limit GET POST OPTION>
Orrder allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTION>
Order deny, allow
Deny from all
</LimitExcept>
</Directory>
(3)将编辑好的配置文件保存后重启httpd服务器。
(4)在Web浏览器地址栏中输入Http://192.168.204.2/~dxl/即可打开dxl用户的个人网站,如图3
5、别名和重定向
(1)在配置文件中找到/var/www/icons
(2)指定/var/tmp 目录别名为temp,并映射到文档根目录/var/www/html中,可在/etc/httpd/conf/httpd.conf文件中主服务器配置段中添加下列配置语句:Alias /temp “/var/tmp”
<Directory “/var/tmp”>
Options Indexes
AllowOverride None
Orrder allow,deny
Allow from all
</Directory>
(3)保存添加的配置语句,再在终端命令窗口中执行如下命令重启httpd服务:
[root@rhe14 ~]# service httpd restart
(4)在Web浏览器地址栏输入 Http://192.168.204.85/temp即可进入如下图4
(5)将Http://192.168.204.85/temp重定向到Http://192.168.204.25/other在文件
的主服务器配置段添加如下语句:
Redirect 303 /temp Http://192.168.204.25/other
6、用户身份验证
(1) 在var/www/html创建test文件夹。
(2) 编辑Apache文件/etc/httpd/conf/hpptd.conf,
在主服务器配置段修改或添加以下语句:
Alias /test “/var/www/html/test
<Directory “ var/www/html/test”>
Options Indexes Multivews
AllowOverride Authconfig //允许在文件.htaccess中使用认证授权
Order allow, deny
Allow from all
</Directory>
(3)在test文件夹下创建一个文档命名为.htaccess
(4)在.htaccess文档下添加如下语句:
Authname “sunzhongxia web”
Authtype Basic //设置认证类型为基本类型
AuthUserFile /var/www/html/test/.htpasswd
//指定验证时所采用的用户口令及位置
Require Valid-user
(4)创建口令验证文件
要在/var/www/html/test/目录中创建一个口令文件.htpasswd,并添加一个用户szx,则在终端中进行如下操作:
[root@rhe14 ~]# htpasswd –c /var/www/html/test/.htpasswd szx
New password:
Re-type new password:
Adding password for user szx
(5) 重新启动 Apache服务器在浏览器中输入http:// 192.168.204.2/test/出现如下图
7、配置虚拟主机
1、IP地址不同,单端口号相同的虚拟主机配置
(1)在同一网卡上绑定两个IP,配置如下:
[root@rhe14 ~]# ifconfig eth0 192.168.1.10 netmask 255.255.255.0
[root@rhe14 ~]# ifconfig eth0 192.168.1.100 netmask 255.255.255.0
(2) 编辑Apache文件/etc/httpd/conf/hpptd.conf,文件在虚拟主机配置段修改或添加
下列语句:
Listen 801
Listen 802 //添加端口
<VirtualHost 192.168.1.10:801>
ServerAdmin webmaster@reh14.com
DocumentRoot /var/www/ipvhost1 // 文档根目录
SeverName 192.168.1.10 // 服务器名
Errorlog logs/192.168.1.10-error_log // 错误日志
CustomLog logs/192.168.1.10-access_log common //访问日志
<VirtualHost>
<VirtualHost 192.168.1.100:802>
ServerAdmin webmaster@reh14.com
DocumentRoot /var/www/ipvhost2
SeverName 192.168.1.100
Errorlog logs/192.168.1.100-error_log
CustomLog logs/192.168.1.100-access_log common
<VirtualHost>
(3)创建两个虚拟主机的文档根目录及相应的测试面:
[root@rhe14 ~]# mkadir –p /var/www/ipvhost1
[root@rhe14 ~]# mkadir –p /var/www/ipvhost2
[root@rhe14 ~]# vi /avr/www/ipvhost1/index.html
[root@rhe14 ~]# vi /avr/www/ipvhost2/index.html
// 在/var/www/文件下创建ipvhost1,ipvhost2再在ipvhost1,ipvhost2创建
网页文档并输入相应的内容
(4)重启Apache服务器,然后在进行虚拟主机测试,在web浏览器地址中
分别输入http://192.168.1.10和http://192.168.1.100出现如下图所示就
表明配置完成:
2、IP地址相同,单端口号不相同的虚拟主机配置
(1)为物理网卡配置一个IP地址.
[root@rhe14 ~]# ifconfig eth0 192.168.204.2 netmask 255.255.255.0
(2) 编辑Apache文件/etc/httpd/conf/hpptd.conf,文件在虚拟主机配置段修
改或添加如下语句:
Listen 801
Listen 802 //添加端口
<VirtualHost 192.168.204.2:801>
ServerAdmin webmaster@reh14.com
DocumentRoot /var/www/ipvhost3 // 文档根目录
SeverName 192.168.204.2 // 服务器名
Errorlog logs/192.168.204.2-801-error_log // 错误日志
CustomLog logs/192.168.204.2-801-access_log common //访问日志
<VirtualHost>
<VirtualHost 192.168.204.2:802>
ServerAdmin webmaster@reh14.com
DocumentRoot /var/www/ipvhost4
SeverName 192.168.204.2
Errorlog logs/192.168.204.2-802-error_log
CustomLog logs/192.168.204.2-802-access_log common
<VirtualHost>
(3) 创建两个虚拟主机的文档根目录及相应的测试面:
[root@rhe14 ~]# mkadir –p /var/www/ipvhost3
[root@rhe14 ~]# mkadir –p /var/www/ipvhost4
[root@rhe14 ~]# vi /avr/www/ipvhost1/index.html
[root@rhe14 ~]# vi /avr/www/ipvhost2/index.html
// 在/var/www/文件下创建ipvhost1,ipvhost2再在ipvhost3,ipvhost4创建
网页文档并输入相应的内容。
(4)重启Apache服务器,然后在进行虚拟主机测试,在web浏览器地址
中分别输入http://192.168.1.10和http://192.168.1.100出现如下图
所示则表明配置成功。
七、实验总结
1、修改配置文件是整个实验过程中作重要的部分,如果把重要的配置文件注释掉,就会导致Apache服务器重启失败。但如果把重要的配置文件不取消注释就会导致配置失败。
2、在配置过程中会遇到问题如当配置完成后在web浏览器中打开时出现“Forbidden”时说明你创建文件或者网页的权限有问题此时要把权限 修改为最高“777”。
3、当配置完成后在web浏览器中打开时出现“NOT FOUND”时就仔细检查你的配置文件和在根目录下创建的文件或者网页命名是否一致,检查根目录下是否存在你要打开的文件。
4、当在web浏览器中打开时出现如“载入http:192.168.204.2时生错”
时就检查你是否启动Apache服务器,输入的是否是刚开机是的ip。
5、当配置了虚拟主机时,必须在终端中输入“setenforce 0”此命令时才能重启apache,要不然apache服务器重启会失败!
6、在试验中用到的.htaccess文件是Apache服务器上的一个设置文件它是一个文本文件,可以使用任何文本编辑器进行编写。.htaccess的功能包括设置网页密码、设置发生错误时出现的文件、改变首页的文件名(如index.html)、禁止读取文件名、重新导向文件、加上MIME类别、禁止列目录下的文件等。
7、.htpasswd是一个密码保护文件