




已阅读5页,还剩69页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,项目七实现web服务,项目描述,小王的公司需要架设一台web服务器,公司有两种主打产品,分别要制作两个网站放在web服务器上,另外需要给两个网站设置不同的域名,应该如何解决这个问题呢?,任务分析,在DNS服务器中建立和两个域名,使它们解析到同一个IP地址上,然后创建基于域名的虚拟主机。其中域名为的虚拟主机对应的主目录为/usr/www/web1,域名为的虚拟主机对应的主目录为/usr/www/web2。,任务分析,如何实现一台web服务器放置多个站点?每个网站的域名应该如何设置呢?,知能目标,能够进行apache服务器的安装能够解读apache服务器的配置文件能够进行基本web服务器配置能够进行虚拟主机和虚拟目录的配置能够进行访问控制和认证授权掌握apache配置指令掌握apache服务器和DNS服务器结合使用的方法,子任务,7-1架设个人网站7-2实现网站的访问控制7-3实现服务器一机多站点,任务1 架设个人站点,任务描述,小王想架设一个个人网站,因为对服务器配置不太熟悉,想简单进行配置就可以实现操作,如何设置呢?,知识准备,Web服务的概述,HTTP协议Web服务Web服务工作原理,HTTP协议,WWW的目的就是使信息更易于获取,而不管它们的地理位置在哪里。当使用超文本作为WWW文档的标准格式后,人们开发了可以快速获取这些超文本文档的协议HTTP协议,即超文本传输协议。HTTP是应用级的协议,主要用于分布式、协作的信息系统。HTTP协议是通用的、无状态的,其系统的建设和传输与数据无关。HTTP也是面向对象的协议,可以用于各种任务,包括名字服务、分布式对象管理、请求方法的扩展、命令等。在Internet上,HTTP通信往往发生在TCP/IP连接上,其默认的端口为80,也可以使用其他端口。,Web服务,Web服务的实现采用客户/服务器模型。客户机运行WWW客户程序浏览器,它提供良好、统一的用户界面。浏览器的作用是解释和显示Web页面,响应用户的输入请求,并通过HTTP协议将用户请求传递给Web服务器。Web服务器运行服务器程序,它最基本的功能是侦听和响应客户端的HTTP请求,向客户端发出请求处理结果信息。Web服务通常可以分为两种:静态Web服务和动态Web服务。,Web服务工作原理,Web浏览器使用HTTP命令向一个特定的服务器发出Web页面请求。若该服务器在特定端口(通常是TCP 80端口)处接收到Web页面请求后,就发送一个应答并在客户和服务器之间建立连接服务器Web查找客户端所需文档,若Web服务器查找到所请求的文档,就会将所请求的文档传送给Web浏览器。若该文档不存在,则服务器会发送一个相应的错误提示文档给客户端。Web浏览器接收到文档后,就将它显示出来。当客户端浏览完成后,就断开与服务器的连接。,Apache服务器,开放源代码的Apache(阿帕奇)服务器起初由Illinois大学Urbana-Champaign的国家高级计算程序中心开发,后来Apache被开放源代码团体的成员不断地发展和加强。渐渐地,它开始在功能和速度上超越其他Web服务器。由于Apache服务器拥有牢靠可信的美誉,因此从1995年1月以来,Apache一直是Internet上最流行的Web服务器。,Apache服务,后台进程:httpd脚本:/etc/rc.d/init.d/httpd使用端口:80(http),443(https)所需RPM包:httpd配置路径:/etc/httpd/conf/httpd.conf默认网站存放路径:/var/www/html/,Apache服务器测试,安装好Apache服务器后可以进行测试了。启动Apache服务器:service httpd start,访问方式,在浏览器的“地址”栏中,用来指定APACHE服务器位置的方式有三种:IP地址局域网和internet中使用主机名称( 局域网和internet中使用)别名http:/www (仅限于局域网中使用),Apache服务的基本配置,httpd.conf文件的格式 Web服务的基本配置 创建虚拟目录设置目录权限虚拟主机的配置,Apache配置文件httpd.conf,httpd.conf配置文件主要由全局环境、主服务器配置和虚拟主机3个部分组成。每部分都有相应的配置语句,该文件所有配置语句的语法为“配置参数名称 参数值”的形式。Section 1:Global Environment 全局环境Section 2:Mainserver configuration主服务器配置Section 3: virtual hosts 虚拟主机,httpd.conf中每行包含一条语句,行末使用反斜杠“”可以换行,但是反斜杠与下一行中间不能有任何其他字符(包括空白)。httpd.conf的配置语句除了选项的参数值以外,所有选项指令均不区分大小写,可以在每一行前用“#”号表示注释。,指令,Apache服务器是靠指令来工作的,一条指令是一个被赋予一个或多个值的关键字,用来指示服务器某一行为的某一方面。例如:Listen 80 ErrorLog logs/error.log,容器指令,容器指令(container directive)通常包括在括号内,较容易识别。容器指令是把一条或多条指令的作用范围限定在一个特殊目录、一个文件集或是一个uRL集中。容器和HTML的标签有些类似,负责封装一条或者多条指令。条件指令和不是容器指令,他们是例外。, deny from all Allow from 1921681105 封装在容器里面的指令集只应用于服务器上限定的目录集,这个限定的工作由容器来完成。容器有很多种不同的类型,指定许多不同的方法来分割服务于Web服务器的内容。,常用的容器指令有:,全局配置(1),ServerRoot用于指定指定守护进程httpd的运行目录,httpd在启动之后自动将进程的当前目录改变为这个目录,因此如果设置文件中指定的文件或目录是相对路径,那么真实路径就位于这个路径之下。Timeout用于定义客户程序和服务器连接的超时间隔,超过这个时间间隔(以秒计)后,服务器将断开与客户机的连接。Listen设定http服务的默认端口。User/Group设定服务器程序的执行者与属组,全局配置(2),KeepAlive在HTTP1.0中,一次连接只能作传输一次HTML请求,而KeepAltve参数用于支持HTTP1.1版本的一次连接、多次传输功能,这样就可以在一次连接中传递多个HTML请求。虽然只有较新的浏览器才支持这个功能,但最好还是使用“on”这个选项。 MaxKeepAliveRequestsMaxKeepAliveRequests为一次连接可以进行的HTML请求的最大请求次数。将其值设为0,将支持在一次连接内进行无限次的传输请求。事实上没有客户程序在一次连接中请求大多的页面,通常达不到这个上限就完成连接了。KeepAliveTimeout KeepAliveTimeout测试一次连接中的多次请求传输之间的时间,如果服务器已经完成了一次请求,但一直没有接收到客户程序的下一次请求,当时间间隔超过了这个参数设置的值之后,服务器就断开连接。,全局配置(3),MaxClients 服务器的能力毕竟是有限的,不可能同时处理无限多的连接请求,因此参数MaxClients就用于规定服务器支持的最多并发访问的客户数,如果这个值设置得过大,系统在繁忙时不得不在过多的进程之问进行切换来为这些客户进行服务,这样对每个客户的反应就会减慢,并降低了整体的效率。如果这个值设置得较小,那么系统繁忙时就会拒绝一些客户的连接请求。当服务器性能较高时,可以适当增加这个值的设置。MaxRequestsPerChild 使用于进程方式的Web务,常用的方式是一个子进程为一次连接服务,这样造成的问题就是每次连接都需要生成、退出于进程的系统操作,这些额外的处理过程占据了计算机的大量处理能力。因此最好的方式是一个子进程可以为多次连接请求服务,这样就不会造成这些生成、退出进程引起的系统消耗。Apache就采用了这样的方式,一次连接结束后,子进程并不退出,而是停留在系统中等待下一次服务请求,这样就极大地提高了性能。,主机配置,ServerAdmin设定站点管理者的电子邮件ServerName设定服务器的名称DocumentRoot设定服务器的共享路径DirectoryIndex设定默认调用文件顺序ErrorLog设定错误记录文件名称,默认情况下不做任何配置,apache服务器设置的有一个文档根目录,DocumentRoot “/var/www/html”里面有一些测试文档,在浏览器地址栏中敲入http:/localhost,就可以打开测试页面,任务实施,任务步骤:步骤一:安装并启动apache服务器步骤二:放置网站步骤三:主配置文件设置步骤四:重启服务器测试效果,步骤一,安装并启动服务器,步骤二,放置网站,步骤四,主配置文件配置,步骤五,重启服务器测试效果,7-2实现网站的访问控制,在Web服务器中建立一个名为private的虚拟目录,其对应的物理路径是/usr/local/private,并配置Web服务器对该虚拟目录启用用户认证,只允许用户名为abc和xyz的用户访问。,任务分析,虚拟目录如何创建?用户认证如何实现?,知识准备虚拟目录配置,要从主目录以外的其他目录发布网站,就必须创建虚拟目录.虚拟目录是一个位于apache的主目录外的目录,不包含在主目录中,但在访问WEB站点的用户来看,他们是没有区别的.为了安全起见,每个虚拟目录都有一个别名,拥护web浏览器中可以通过此别名来访问虚拟目录,如http:/服务器IP地址/别名/文件名/abc/index.html,虚拟目录,创建虚拟目录,虚拟目录有以下优点。便于访问。便于移动站点中的目录。 能灵活加大磁盘空间。 安全性好。使用Alias选项可以创建虚拟目录。【例】创建名为/down的虚拟目录,它对应的物理路径是“/software/download”。Alias /down /software/download“注意:如果系统开启了SELinux,则还需要去改变真实目录的上下文。,例1:创建名为/ftp的虚拟目录,它对应的物理路径为”/var/ftp”Alias /ftp “/var/ftp”以上配置是最简单的配置,没有添加目录的访问控制,举例说明,根目录中的内容和虚拟目录中的内容访问是有区别的根目录访问:http:/localhost或者http:/IP地址虚拟目录访问:http:/localhost/别名如:http:/localhost/abc或者http:/IP地址/别名,注意,网站的访问控制,建立基于主机的访问控制Apache也可以针对不同的目录或文件设定指定IP地址的主机可以(不可以)访问。建立基于用户的访问控制Apache可以针对不同的目录或文件设定不同的口令文件,实现基于用户的访问控制。,建立基于主机的访问控制,为指定的目录设置目录权限,可以使用和这对语句为主目录或虚拟目录设置权限,它们是一对容器语句,必须成对出现,它们之间封装的是具体的设置目录权限语句,这些语句仅对被设置目录及其子目录起作用。下面是主配置文件中设置目录权限的例子。Options Indexes MultiViewsOrder allow,denyAllow from 0,通过options参数指令访问权限,Order,Order allow,denyOrder用于指定allow和deny的先后次序。Deny:定义拒绝访问列表。 Allow:定义允许访问列表。,(1) Order指令有两种形式:Order Allow,Deny:在执行拒绝访问规则之前先执行允许访问规则,默认情况下将会拒绝所有没有明确被允许的客户。 Order Deny,Allow:在执行允许访问规则之前先执行拒绝访问规则,默认情况下将会允许所有没有明确被拒绝的客户。,(2)Deny 和 Allow。Deny和 Allow指令的后面需要跟访问列表,访问列表可以使用如下的几种形式:All:表示所有客户。 域名:表示域内的所有客户,如 。 IP 地址:可以指定完整的 IP 地址或部分 IP 地址。 网络/子网掩码:如/55.0。,基于主机的目录访问权限,当要限制某一个主机是否能够访问目录时,可加入以下的参数来设置:Order allow,deny /默认拒绝所有主机访问Allow from 00 /单独开放Order deny,allow /默认充许所有主机访问Deny from 00 /单独禁止,访问控制配置举例,修改主配置文件# vi /etc/httpd/conf/httpd.conf /先执行 deny规则再执行 allow规则 Order deny,allow /拒绝所有的客户,只允许来自7 的访问 Deny from all Allow from 7 ,/重新启动httpd #service httpd restart 在客户浏览器上进行测试 虽然例中的访问控制是在 Location 容器中设置的,但这种方法也适用于其他容器,如Directory容器和Files容器。,对比,例一 仅允许来自网络客户机的访问Order allow,denyAllow from 对比Order deny,allowAllow from 允许所有客户机的访问,子任务1在Web服务器中建立一个名为test的虚拟目录,其对应的物理路径是/usr/local/test,并配置Web服务器仅允许来自网络00客户机的访问。,任务主配置文件配置部分,基于用户的目录访问权限,建立虚拟目录并配置用户认证Alias /mysecret /usr/local/mysecret“AuthType BasicAuthName This is a private directory. Please Login:AuthUserFile /etc/httpd/mysecretpwdRequire user linden tom,基于用户的目录访问权限,建立口令文件(首次使用)htpasswd -c /etc/httpd/pwfile linden添加用户(第二次添加)htpasswd /etc/httpd/pwfile lonny修改用户密码htpasswd /etc/httpd/pwfile lonny,AuthName此指令为口令保护的页面设置认证区域,区域在提示要求认证时呈现给用户内容 。比如:AuthName “please enter your name and password “AuthType此指令为这个区域设置认证类型,一般选择basic基本类型。AuthType basic,AuthUserFile此指令定义了口令文件的路径,即使用htpasswd建立的口令文件的位置。AuthUserFile /etc/httpd/mysiteAuthGroupFile 指定包含用户组清单和这些组的成员的清单文件,组成成员之间用空格分开,Require指定需要什么条件才能够被授权访问。Require user指令定义了允许那些用户访问,各用户之间用空格分开。Require user tom abc user1,任务描述在Web服务器中建立一个名为private的虚拟目录,其对应的物理路径是/usr/local/private,并配置Web服务器对该虚拟目录启用用户认证,只允许用户名为abc和xyz的用户访问。,任务步骤,步骤一 创建网站存放目录步骤二 主配置文件配置步骤三 重启服务器并测试效果,步骤一,创建目录并放置首页,步骤二,修改主配置文件,创建认证文件,效果,对访问和认证授权进行控制举例,vi /etc/httpd/conf/httpd.conf 修改主配置文件 指定目录路径AllowOverride None不使用.htaccess文件Order deny,allowDeny from all 拒绝所有Allow from 192.168.1 允许192.168.1段上的用户访问AuthType Basic指定使用基本认证方式AuthName “NCIE”指定认证领域名称AuthUserFile /etc/httpd/conf/.htpasswd指定认证口令文件存放位置require valid-user授权给认
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大班建构积木活动指南
- 儿童国画鸡课件
- 时间位移课件
- 时钟变时间尺课件
- 2025版高端餐饮连锁加盟合作协议
- 2025版体育赛事赞助担保合同
- 二零二五版房屋代理买卖合同(含市场分析)
- 二零二五年度板材库存管理与购销合同
- 2025版餐饮企业承包合同标准模板下载
- 2025版第一部分智慧交通建设项目投标邀请合同
- 矿井物探工作管理制度
- 中建五局公司管理制度
- 2025-2030年中国膀胱过度活动疗法行业市场现状供需分析及投资评估规划分析研究报告
- 石家庄供暖管网规划方案
- 检测公司销售管理制度
- 2025年全国统一高考语文试卷(全国一卷)含答案
- 偏瘫的潜在并发症护理
- (高清版)DGJ 08-102-2003 城镇高压、超高压天然气管道工程技术规程
- JJF(滇) 32-2024 医用水平旋转仪校准规范
- 解除共管账户协议书
- 心胸外科麻醉管理
评论
0/150
提交评论