1.为linux系统分配IP地址:192.168.X.1/24,客户端XP系统IP地址为:192.168.X.2/24,其主要DNS指定为:192.168.X.1。

2.查询本机是否安装了httpd服务,结果显示已安装(默认已安装)

3.启动httpd服务

4.在linux系统中的火狐浏览器中打开本地回环地址127.0.0.1,可以看到测试页,说明服务正常启动

5.编辑Apache的主配置文件:vi /etc/httpd/conf/httpd.conf

1) 更改默认web站点根目录到 /var/wwwroot,并更改网站根目录的访问权限

2) 为默认web站点绑定域名www.example.com,即把Servername前面的注释符号#去掉

3)添加网站默认首页文件:index.htm,保存退出httpd.conf文件。

4)在/var目录下新建网站的根目录wwwroot。

5) 在wwwroot下新建网站首页文件index.htm,并通过vi命令在主页文件中写入文本:welcome to NO.X web site!

6   重新启动httpd服务,并在客户端XP通过服务器IP地址192.168.x.1访问该web网站,网站页面不能访问。

7.在防火墙中把WWW服务即80端口设为可信任服务,再通过XP访问只看到测试页面,仍然不能显示主页文件内容。

8.关掉selinux服务  (更改了网站根目录后,无法显示网站首页,这一步非常关键)

#setenforce 0

9. 最后在客户端XP通过服务器IP地址192.168.x.1访问该web网站,结果显示网站首页内容,测试通过

10.在本机配置DNS服务器,为网站添加A记录:www.example.com~192.168.x.1,最后通过域名www.example.com 在客户机XP系统访问默认网站。

11.创建虚拟目录web

1编辑Apache的主配置文件:vi /etc/httpd/conf/httpd.conf,找到Alias关键字定义一个web的虚拟目录,实际路径是/var/web。

2)重启httpd服务,然后新建虚拟目录:#mkdir /var/web

3) 新建虚拟目录主页文件index.html,并写入文本:welcome to a Alias web site!

4)在XP系统通过地址:192.168.100.1/web访问虚拟目录,访问不成功

5)关闭selinux安全服务:#setenforce 0

6) 在XP系统通过地址:192.168.100.1/web访问虚拟目录,访问成功。

12. 多个IP创建虚拟主机站点

1)在linux系统中绑定多一个IP地址:192.168.X.2/24,重启网络服务,然后在apache中创建两个虚拟主机站点:A和B站点。

2)在/var下新建两个站点的根目录/var/A和/var/B,并在A和B下分别新建主页文件index.html,分别写入文本:welcome to NO.X.A  site!、welcome to NO.X.B  site!

3)编辑Apache的主配置文件:vi /etc/httpd/conf/httpd.conf,找到<VirtualHost>…<VirtualHost>语句添加基于A和B两个站点的虚拟主机代码:

保存退出,并重启httpd服务。

4)在XP系统通过两个IP地址访问A、B两个站点,正常显示两个站点首页内容。

13. 端口号法创建虚拟主机

1)  打开apache主配置文件,找到Listen 80语句,修改为:Listen 192.168.100.1:80,并加多一句:Listen 192.168.100.1:8080,用于监听两个端口号服务

2)  找到<VirtualHost>…<VirtualHost>语句添加基于A和B两个站点的虚拟主机代码:

保存退出。

3)  在XP通过IP地址+端口号访问两个站点:http://192.168.100.1:80、http://192.168.100.1:8080,A站点能成功,B站点失败。

4)  在防火墙界面中通过添加其它端口方法允许8080端口为可信任服务,或者通过编辑防火墙配置文件,添加规则,允许8080端口通过。

#vi /etc/sysconfig/iptables

5)  在XP通过IP地址+端口号访问两个站点:http://192.168.100.1:80、http://192.168.100.1:8080,A、B两个站点均能访问成功。

14.基于主机名的虚拟主机

1)编辑Apache的主配置文件:vi /etc/httpd/conf/httpd.conf,找到<VirtualHost>…<VirtualHost>语句添加基于A和B两个站点的虚拟主机代码:

保存退出,并重启httpd服务

2)在Linux系统中配置DNS服务,为A和B两个站点分别提供www.a.com、www.b.com的域名服务

3)安装完bind程序包后,进入DNS主配置文件,添加两个正向查找区域:a.com和b.com,一个反向查找区域100.168.192.in-addr.arpa,并分别新建正反向区域文件,添加对应的资源记录,添加成功后,重启DNS服务。

DNS主配置文件named.conf代码截图

区域文件a.com代码截图

区域文件b.com代码截图

反向区域文件192.168.100.arpa代码截图

4)重启httpd服务

5)在XP系统通过www.a.com、www.b.com访问两站点。

web服务器配置实践的更多相关文章

  1. Redis的Python实践,以及四中常用应用场景详解——学习董伟明老师的《Python Web开发实践》

    首先,简单介绍:Redis是一个基于内存的键值对存储系统,常用作数据库.缓存和消息代理. 支持:字符串,字典,列表,集合,有序集合,位图(bitmaps),地理位置,HyperLogLog等多种数据结 ...

  2. 【原创】我所理解的自动更新-外网web服务器配置

    ClientDownload和ClientUpdate共享渠道配置信息: channel-0.php //以appstore的渠道为例 <?php define('APPNAME', 'TOKE ...

  3. ASP.NET Web API实践系列04,通过Route等特性设置路由

    ASP.NET Web API路由,简单来说,就是把客户端请求映射到对应的Action上的过程.在"ASP.NET Web API实践系列03,路由模版, 路由惯例, 路由设置"一 ...

  4. visual studio 2012打开提示 未能将网站×××配置为使用 ASP.NET 4.5 和 尚未在Web服务器上注册,您需要手动将Web服务器配置为使用ASP.NET 4.5

    未能将网站×××配置为使用 ASP.NET 4.5.为了使此网站正确运行,您必须将它手动配置为使用ASP.NET 4.5. ASP.NET 4.5尚未在Web服务器上注册,您需要手动将Web服务器配置 ...

  5. 《高级软件测试》web测试实践--12月30日记录

    考完数学,我们正式开始web测试实践的作业,今天,我们主要进行了方案的选择和人员的分工.任务计划和安排如上图所示. 任务进展:完成题目选择和人员分工: 遇到问题:暂无: 下一步任务:完成软件评测.用户 ...

  6. vs2012 aps.net 4.5尚未在web服务器上注册,您需要手动将Web服务器配置为

    系统换成Windows10安装VS2012打开项目总提示:vs2012 aps.NET 4.5尚未在web服务器上注册,您需要手动将Web服务器配置为使用ASP.net 4.5,这样您的网站才可能正确 ...

  7. 20155326《网路对抗》Exp8 WEB基础实践

    20155326<网路对抗>Exp8 WEB基础实践 实践内容 (1).Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写 ...

  8. 《响应式Web设计实践》学习笔记

    原书: 响应式Web设计实践 目录: 第2章 流动布局 1. 布局选项 2. 字体大小 3. 网格布局 4. 混合固定宽度和流动宽度 第3章 媒介查询 1. 视口 2. 媒介查询结构 3. 内嵌样式与 ...

  9. 20145236《网络对抗》Exp8 WEB基础实践

    20145236<网路对抗>Exp8 WEB基础实践 一.基础问题回答 什么是表单 表单在网页中主要负责数据采集功能 一个表单有三个基本组成部分: 表单标签 表单域:包含了文本框.密码框. ...

随机推荐

  1. 使用reactjs遇到Warning: setState(...): Can only update a mounted or mounting component.

    前端数据大部分来源于后端,需要向后端发起异步请求,而在使用reactjs的时候,如果这个组件最初加载的时候就发起这个异步请求,然后在返回结果中进行setState({}),这时候有可能会遇到这个警告: ...

  2. Swift-Swift中的全局变量和函数的创建

    解决办法: 写OC的时候常常会用到各种宏定义,但是Swift中貌似没有宏的这种定义,更多的是通过全局常量或者全局函数来实现这一效果.我们只需要建立一个文件(假设为Macro.swift),把想用的定义 ...

  3. u盘装系统,u盘安装win7系统教程

    http://www.upanboot.com/tool/anzhuang_win7.html 可以用本教程给笔记本.台式机.上网本和组装电脑通过U盘安装Win7系统. 步骤一.首先要准备一个至少8G ...

  4. Delphi Code Editor 之 几个特性(转)

    Delphi Code Editor有几个特性在编写大规模代码时非常有用.下面分别进行介绍: 原地址:http://www.cnblogs.com/pchmonster/category/343330 ...

  5. ubuntu 创建桌面快捷方式

    $sudo apt-get install gnome-panel $gnome-desktop-item-edit  /home/xxx/桌面 --create-new 命令行:填入程序名称,如/u ...

  6. click() bind() live() delegate()区别

    click(),bind(),live()都是执行事件时使用的方法 1.click()单击事件方法: $("a").click(function() { alert("h ...

  7. WCF(一) 创建第一个WCF

    定义服务契约-创建宿主程序-创建客户端程序访问服务 namespace HelloService { /// <summary> /// 服务契约 /// </summary> ...

  8. 一步步从Spring Framework装配掌握SpringBoot自动装配

    目录 Spring Framework模式注解 Spring Framework@Enable模块装配 Spring Framework条件装配 SpringBoot 自动装配 本章总结 Spring ...

  9. Oracle数据类型char与varchar的对比

    使用scott用户连接数据库 新建一个表 create table stu01(name char(32)); 插入一条数据 insert into stu01 values('liuyueming' ...

  10. UESTC 485 Game(康托展开,bfs打表)

    Game Time Limit: 4000/2000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit Status t ...