Linux网络服务器配置管理项目实训教程(第二版)
配置与管理Apache服务器熟悉Apache服务的安装、启动与停止熟悉Apache服务主配置文件掌握各种Apache服务器的配置方法掌握虚拟主机的实现方法基于主机和认证的访问控制虚拟主机学习目标本章难点8.1
相关知识8.3项目实施8.5
练习题8.6
实训8.7
项目实训8.8
超级链接配置与管理Apache服务器8.2项目设计与准备8.4企业实战与应用
8.1相关知识8.1.1Web服务的概述WWW(WorldWideWeb)服务是解决应用程序之间相互通信的一项技术。严格地说,WWW服务是描述一系列操作的接口,它使用标准的、规范的XML描述接口。这一描述中包括了与服务进行交互所需要的全部细节,包括消息格式、传输协议和服务位置。而在对外的接口中隐藏了服务实现的细节,仅提供一系列可执行的操作,这些操作独立于软、硬件平台和编写服务所用的编程语言。WWW服务既可单独使用,也可同其他WWW服务一起使用,实现复杂的商业功能。8.1.1Web服务的概述1.Web服务简介WWW是Internet上被广泛应用的一种信息服务技术。WWW采用的是客户/服务器结构,整理和储存各种WWW资源,并响应客户端软件的请求,把所需的信息资源通过浏览器传送给用户。Web服务通常可以分为两种:静态Web服务和动态Web服务。2.HTTPHTTP(HypertextTransferProtocol,超文本传输协议)可以算得上是目前国际互联网基础上的一个重要组成部分。而Apache、IIS服务器是HTTP协议的服务器软件,微软的InternetExplorer和Mozilla的Firefox则是HTTP协议的客户端实现。8.1.1Web服务的概述(1)客户端访问Web服务器的过程。一般客户端访问Web内容要经过3个阶段:在客户端和Web服务器间建立连接、传输相关内容、关闭连接。①Web浏览器使用HTTP命令向服务器发出Web请求(一般是使用GET命令要求返回一个页面,但也有POST等命令)。②服务器接收到Web页面请求后,就发送一个应答并在客户端和服务器之间建立连接。如图6-1所示为建立连接示意图。③服务器Web查找客户端所需文档,若Web服务器查找到所请求的文档,就会将所请求的文档传送给Web浏览器。若该文档不存在,则服务器会发送一个相应的错误提示文档给客户端。④Web浏览器接收到文档后,就将它解释并显示在屏幕上。如图8.1.1Web服务的概述⑤当客户端浏览完成后,就断开与服务器的连接。如图8.1.1Web服务的概述(2)端口。HTTP请求的默认端口是80,但是也可以配置某个Web服务器使用另外一个端口(比如8080)。这就能让同一台服务器上运行多个Web服务器,每个服务器监听不同的端口。但是要注意,访问端口是80的服务器,由于是默认设置,所以不需要写明端口号,如果访问的一个服务器是8080端口,那么端口号就不能省略,它的访问方式就变成了:http://:8080/8.1.2LAMP模型互联网中,动态网站是最流行的Web服务器类型。在Linux平台下,搭建动态网站的组合,采用最为广泛的为LAMP,即Linux、Apache、MySQL以及PHP4个开源软件构建,取英文第一个字母的缩写命名。Linux是基于GPL协议的操作系统,具有稳定、免费、多用户,多进程的特点。Linux的应用非常广泛,是服务器操作系统的理想选择。Apache为Web服务器软件,与微软公司的IIS相比,Apache具有快速、廉价、易维护、安全可靠这些优势,并且开放源代码。MySQL是关系数据库系统软件。由于它的强大功能、灵活性、良好的兼容性,以及精巧的系统结构,作为Web服务器的后台数据库,应用极为广泛。PHP是一种基于服务端来创建动态网站的脚本语言。PHP开放源码,支持多个操作平台,可以运行在Windows和多种版本的UNIX上。它不需要任何预先处理而快速反馈结果,并且PHP消耗的资源较少,当PHP作为Apache服务器一部分时,运行代码不需要调用外部程序,服务器不需要承担任何额外的负担。PHP应用程序通过请求的URL或者其他信息,确定应该执行什么操作。如有需要,服务器会从MySQL数据库中获得信息,将这些信息通过HTML进行组合,形成相应网页,并将结果返回给客户机。当用户在浏览器中操作时,这个过程重复进行,多个用户访问LAMP系统时,服务器会进行并发处理。8.1.3流行的WWW服务器软件
目前网络上流行着各种各样的WWW服务器软件,其中最有名的莫过于微软的IIS和免费的Apache。到底哪个才更适合我们呢?(1)免费VS收费。(2)稳定性。(3)扩展性。另外,扩展性也是指WWW服务器软件对于各种插件的支持,在这方面,IIS和Apache表现不相上下,对于Perl、CGI、PHP和Java等都能够完美支持。8.1.4Apache服务器简介1.Apache的历史2.Apache的特性1995.8~2007.10各种Web服务器的市场占有率8.2项目设计及准备8.2.1项目设计利用Apache服务建立普通Web站点、基于主机和用户认证的访问控制。8.2.2项目准备安装有企业服务器版Linux的PC计算机一台、测试用计算机一台(WindowsXP)。并且两台计算机都在连入局域网。该环境也可以用虚拟机实现。规划好各台主机的IP地址。8.3项目实施8.3.1任务1安装、启动与停止Apache服务1.Apache相关软件8.3.1任务1安装、启动与停止Apache服务8.3.1任务1安装、启动与停止Apache服务8.3.1任务1安装、启动与停止Apache服务8.3.1任务1安装、启动与停止Apache服务3.测试httpd服务是否安装成功安装完Apache服务器后,执行以下命令启动它。启动或重新启动Apache服务命令如下8.3.1任务1安装、启动与停止Apache服务4.让防火墙放行
需要注意的是,RedHatEnterpriseLinux5采用了SELinux这种增强的安全模式,在默认的配置下,只有SSH服务可以通过。像Apache这种服务,在安装、配置、启动完毕后,还需要为它放行才行。(1)在命令行控制台窗口,输入“setup”命令打开Linux配置工具选择窗口,如图。(2)选中其中的“防火墙配置”选项,按下“运行工具”按钮来打开“防火墙配置”窗口,如图8.3.1任务1安装、启动与停止Apache服务一般情况下,“安全级别”会被设置为“启用”,“SELinux”设置为“强制”。按下“定制”按钮打开SELinux配置窗口,记得把需要运行的服务前面都打上“*”号标记(选中该条目后,按下空格键),如图8.3.1任务1安装、启动与停止Apache服务5.Apache服务停止停止Apache服务的命令如下所示:[root@server~]#servicehttpdstop6.自动加载Apache服务(1)使用ntsysv命令,在文本图形界面对Apache自动加载(在httpd选项前按空格,加上“*”)。(2)使用chkconfig命令自动加载。[root@server~]#chkconfig--level3httpdon
#运行级别3自动加载[root@server~]#chkconfig--level3httpdoff
#运行级别3不自动加载8.3.2任务2认识Apache服务器的主配置文件8.3.2任务2认识Apache服务器的主配置文件1.全局环境配置(GlobalEnvironment)这一部分的指令将影响整个Apache服务器,例如它所能处理的并发请求数或者它在哪里能够找到其配置文件等。(1)ServerRoot"/etc/httpd"。此为Apache的根目录。配置文件、记录文件、模块文件都在该目录下。(2)PidFilerun/httpd.pid。此文件保存着Apache父进程ID。(3)Timeout120。设定超时时间。如果客户端超过120s还没有连接上服务器,或者服务器超过120秒s还没有传送信息给客户端,则强制断线。(4)KeepAliveOff。不允许客户端同时提出多个请求,设为on表示允许。(5)MaxKeepAliveRequests100。每次联系允许的最大请求数目,数字越大,效率越高。0表示不限制。(6)KeepAliveTimeout15。客户端的请求如果15s还没有发出,则断线。(7)MinSpareServers5和MaxSpareServers20。
MinSpareServers5表示最少会有5个闲置httpd进程监听用户请求。若实际闲置数小于5,则会增加httpd进程。
MaxSpareServers20表示最大的闲置httpd进程为20。如果网站访问量很大,可以将这个数目设置大一些。8.3.2任务2认识Apache服务器的主配置文件(8)StartServers8。启动时打开的httpd进程数目。(9)MaxClients256。限制客户端的同时最大连接数目。一旦达到此数目,客户端就会收到“用户太多,拒绝访问”的错误提示。该数目不应该设置得太小。(10)MaxRequestsPerChild4
000。限制每个httpd进程可以完成的最大任务数目。(11)#Listen8:80。设置Apache服务的监听端口。一般在使用非80端口时设置。(12)LoadModuleauth_basic_modulemodules/mod_auth_basic.so。加载DSO模块。DSO(DynamicSharedObject)很像Windows的DLL(DynamicLinkLibrary,动态链接库)。(13)#ExtendedStatusOn。用于检测Apache的状态信息,预设为Off。(14)Userapache。Groupapache设置Apache工作时使用的用户和组。8.3.2任务2认识Apache服务器的主配置文件8.3.2任务2认识Apache服务器的主配置文件(5)<Directory"/var/www/html">
OptionsIndexesFollowSymLinks
AllowOverrideNone
Orderallow,deny
Allowfromall</Directory>设置Apache主服务器网页文件存放目录的访问权限。(6)<IfModulemod_userdir.c>
UserDirdisable
#UserDirpublic_html</IModule>设置用户是否可以在自己的目录下建立public_html目录来放置网页。如果设置为“UserDirPublic_html”,则用户就可以通过:http://服务器IP地址:端口/~用户名称8.3.2任务2认识Apache服务器的主配置文件(7)DirectoryIndexindex.htrnlindex.html.var。设置预设首页,默认是index.html。设置以后,用户通过“http://服务器IP地址:端口/”访问的其实就是“http://服务器IP地址:端口/index.html”。(8)AccessFileName.htaccess。设置Apache目录访问权限的控制文件,预设为.htaccess,也可以是其他名字。(9)<Files~"^.ht">Orderallow,denyDenyfromall</Files>防止用户看到以“.ht”开头的文件,保护.htaccess、.htpasswd的内容。主要是为了防止其他人看到预设可以访问相关内容的用户名和密码。(10)TypesConfig/etc/mime/types。指定存放MIME文件类型的文件。可以自行编辑mime.types文件。(11)DefaultTypetext/plain。当Apache不能识别某种文件类型时,将自动将它当成文本文件处理。8.3.2任务2认识Apache服务器的主配置文件(12)<IfModuleroodmime_magic.c>#MIMEMagicFile/usr/share/magic.mimeMIMEMagicFileconf/magic</IfMOdule>mod_mime_magic.c块可以使Apache由文件内容决定其MIME类型。只有载入了rood_mime_magic.c模块时,才会处理MIMEMagicFile文件声明。(13)HostnameLookupsOff。如果设置为On,则每次都会向DNS服务器要求解析该IP,这样会花费额外的服务器资源,并且降低服务器端响应速度,所以一般设置为Off。(14)ErrorLoglogs/error_log。指定错误发生时记录文件的位置。对于在<VirtualHost>段特别指定的虚拟主机来说,本处声明会被忽略。(15)LogLevelwarn。指定警告及其以上等级的信息会被记录在案。8.3.2任务2认识Apache服务器的主配置文件指定警告及其以上等级的信息会被记录在案。各等级及其说明如表8.3.2任务2认识Apache服务器的主配置文件(16)LogFormat"%h%lἻ%r"%>s%b"%{Referer}i"%{User-Agent}i""combinedLogFormat"%h%lἻ%r"%>s%b"commonLogFormat"%{Referer}i->%U"refererLogFormat"%{User-agent}i"agent设置记录文件存放信息的模式。自定义4种:combined、common、referer和agent。(17)CustomLoglogs/access_logcombined。设置存取文件记录采用combined模式。(18)ServerSignatureOn。设置为On时,由于服务器出错所产生的网页会显示Apache的版本号、主机、连接端口等信息;如果设置为E-mail,则会有“mailto:”的超链接。8.3.2任务2认识Apache服务器的主配置文件(19)Alias/icons/"/var/www/icons/":<Directory"/var/www/icons/">OptionsIndexesMultiViewsAllowOverrideNoneOrderallow,denyAllowfromall</Directory>定义一个图标虚拟目录,并设置访问权限。(20)ScriptAlias/cgi-bin/"/var/www/cgi-bin/":<Directory"/var/www/cgi-bin/">AllowOverrideNoneOptionsNoneOrderallow,denyAllowfromall</Directory>同Alias,只不过设置的是脚本文件目录。8.3.2任务2认识Apache服务器的主配置文件(21)IndexOptionsFancyIndexingVersionSortNameWidth=*HTMLTable。采用更好看的带有格式的文件列表方式。(22)AddIconByEncoding(CMP,/icons/compressed.gif)x-compressx-gzipAddlconByType(TXT,/icons/text.gif)text/*
……DefaultIcon/icons/unknown.gif设置显示文件列表时,各种文件类型对应的图标显示。(23)#AddDescription"GZIPcompresseddocument".gz#AddDescription"tararchive".tar#AddDescription"GZIPcompressedtararchive".tgz在显示文件列表时,各种文件后面显示的注释文件。其格式为:AddDescription"说明文字"文件类型8.3.2任务2认识Apache服务器的主配置文件(24)ReadmeNameREADME.htmlHeaderNameHEADER.html显示文件清单时,分别在页面的最下端和上端显示的内容。(25)IndexIgnore.??~*#HEADER*README*RCSCVS,V*,t。忽略这些类型的文件,在文件列表清单中不显示出来。(26)DefaultLanguagenl。设置页面的默认语言。(27)AddLanguageca.caAddLanguagezh-CN.zh-cn设置页面语言。(28)LanguagePriorityencacsdadeeleoesetfrhehritjakoltznlnnrioplptpt-BRrusvzh-CNzh-TW。设置页面语言的优先级。8.3.2任务2认识Apache服务器的主配置文件(29)AddTypeapplication/x-compress.ZAddTypeapplication/x-gzip.gz.tgz增加MIME类型。(30)AddTypetext/html.shtmlAddOutputFilterINCLUDES.shtml使用动态页面。(31)#ErrorDocument500"Theservermadeabooboo."#ErrorDocument404/missing.html#ErrorDocument404"/cgi-bin/missing_handler.pl"#ErrorDocument402/subscription_info.htmlApache支持3种格式的错误信息显示方式:纯文本、内部链接和外部链接。其中,内部链接又包括html和script两种格式。8.3.2任务2认识Apache服务器的主配置文件(32)BrowserMatch"Mozilla/2"nokeepaliveBrowserMatch"MSIE4.0b2;"nokeepalivedowngrade-1.0force-response-1.0如果浏览器符合这两种类型,则不提供keepalive支持。(33)BrowserMatch"RealPlayer4.0"force-response-1.0BrowserMatch"Java/1.0"force-response-1.0BrowserMatch"JDK/1.0"force-response-1.0如果浏览器是这3种类型,则使用“HTTP/1.0”回应。8.3.2任务2认识Apache服务器的主配置文件3.虚拟主机配置(VirtualHosts)通过配置虚拟主机,可以在单个服务器上运行多个Web站点。对于访问量不大的站点来说,这样做可以降低单个站点的运营成本。虚拟主机可以是基于IP地址、主机名或端口号的。基于IP地址的虚拟主机需要计算机上配有多个IP地址,并为每个Web站点分配一个唯一的IP地址。基于主机名的虚拟主机要求拥有多个主机名,并且为每个Web站点分配一个主机名。基于端口号的虚拟主机,要求不同的Web站点通过不同的端口号监听,这些端口号只要系统不用就可以。下面是虚拟主机部分的默认配置示例,具体配置见后。8.3.2任务2认识Apache服务器的主配置文件8.3.3任务3Apache服务器常规设置1.根目录设置(ServerRoot)配置文件中的ServerRoot字段用来设置Apache的配置文件、错误文件和日志文件的存放目录。并且该目录是整个目录树的根节点,如果下面的字段设置中出现相对路径,那么就是相对于这个路径的。默认情况下根路径为/etc/httpd,可以根据需要进行修改。【例8-1】设置根目录为/usr/local/httpd。ServerRoot"/usr/local/httpd"2.超时设置Timeout字段用于设置接受和发送数据时的超时设置。默认时间单位是秒。如果超过限定的时间客户端仍然无法连接上服务器,则予以断线处理。默认时间为120秒,可以根据环境需要予以更改。【例8-2】设置超时时间为300秒。8.3.3任务3Apache服务器常规设置Timeout3008.3.3任务3Apache服务器常规设置3.客房端连接数限制【例8-3】设置客户端连接数为500。<IfModuleprefork.c>StartServers 8MinSpareServers 5MaxSpareServers 20ServerLimit 500MaxClients 500MaxRequestSPerChild 4000</IfModule>
8.3.3任务3Apache服务器常规设置4.设置管理员邮件地址当客户端访问服务器发生错误时,服务器通常会将带有错误提示信息的网页反馈给客户端,并且上面包含管理员的E-mail地址,以便解决出现的错误。如果需要设置管理员的E-mail地址,可以使用ServerAdmin字段来设置。【例8-4】设置管理员E-mail地址为root@。ServerAdminroot@8.3.3任务3Apache服务器常规设置5.设置主机名称ServerName字段定义了服务器名称和端口号,用以标明自己的身份。如果没有注册DNS名称,可以输入IP地址。当然,可以在任何情况下输入IP地址,这也可以完成重定向工作。【例8-5】设置服务器主机名称及端口号。ServerName:80
技巧:正确使用ServerName字段设置服务器的主机名称或IP地址后,在启动服务时则不会出现Couldnotreliablydeterminetheserver’sfullyqualifieddomainname,usingforServerName的错误提示了。8.3.3任务3Apache服务器常规设置6.设置文档目录文档目录是一个较为重要的设置,一般来说,网站上的内容都保存在文档目录中。在默认情形下,所有的请求都从这里开始,除了记号和别名将改指它处以外。【例8-6】设置文档目录为/usr/local/html。DocumentRoot"/usr/local/html"7.设置首页相信很多人对首页一词并不陌生,打开网站时所显示的页面即该网站的首页或者叫它主页。首页的文件名是由DirectoryIndex字段来定义的。在默认情况下,Apache的默认首页名称为index.html。当然也可以根据实际情况进行更改。【例8-7】设置首页名称为index.html。DirectoryIndexindex.html也可以同时设置多个首页名称,但需要将各个文件名之间用空格分开。例如:DirectoryIndexindex.htmlsmile.php8.3.3任务3Apache服务器常规设置【例8-8】设置服务器默认编码为GB2312。AddDefaultCharsetGB2312
技巧:若清楚该使用哪种编码,则可以把AddDefaultCharset字段注释掉,表示不使用任何编码,这样让浏览器自动去检测当前网页所采用的编码是什么,然后自动进行调整。对于多语言的网站搭建,最好采用注释掉AddDefaultCharset字段的这种方法。8.3.3任务3Apache服务器常规设置9.用户个人主页客户端在浏览器中浏览个人主页的URL地址格式一般为:http://域名/~username
其中,“~username”在利用Linux系统中的Apache服务器来实现时,是Linux系统的合法用户名(该用户必须在Linux系统中存在)。用户的主页存放的目录由Apache服务器的主配置文件httpd.conf文件中的主要设置参数UserDir设定。下面是httpd.conf文件中关于用户主页的存放目录及目录访问权限的设置。8.3.3任务3Apache服务器常规设置(1)设置Linux系统用户个人主页的目录。Linux系统用户个人主页的目录由<IfModulemod_userdir.c>容器实现,默认情况下,UserDir的取值为disable,表示不为Linux系统用户设置个人主页。如果想为Linux系统用户设置个人主页可以修改UserDir的取值,一般为public_html,该目录在用户的家目录下。下面是<IfModulemod_userdir.c>容器的默认配置。8.3.3任务3Apache服务器常规设置(2)设置用户个人主页所在目录的访问权限。在允许Linux系统用户拥有个人主页时,可以利用Directory容器为该目录设置访问控制权限。下面是httpd.conf文件中对“/home/*/public_html”目录的访问控制权限的默认配置,该Directory容器默认是被注释掉的。8.3.3任务3Apache服务器常规设置【例8-9】在IP地址为的Apache服务器中,为系统中的long用户设置个人主页空间。该用户的家目录为/home/long,个人主页空间所在的目录为public_html。(1)修改用户的家目录权限,使其他用户具有读和执行的权限。[root@server~]#chmod705/home/long(2)创建存放用户个人主页空间的目录。[root@server~]#mkdir/home/long/public_html8.3.3任务3Apache服务器常规设置(3)创建个人主页空间的默认首页文件。[root@server~]#cd/home/long/public_html[root@serverpublic_html]#echo"thisislong'sweb。">>index.html使用vim修改/etc/httpd/conf/httpd.conf文件中<IfModulemod_userdir.c>模块的内容,将UserDir的值设置为public_html,如下所示,并将<Directory/home/*/public_html>容器的注释符去掉。<IfModulemod_userdir.c>#UserDirdisableUserDirpublic_html</IfModule>
8.3.3任务3Apache服务器常规设置在客户端的浏览器中输入“/~long”看到的个人空间的访问效果如图8.3.3任务3Apache服务器常规设置10.虚拟目录【例8-10】在IP地址为的Apache服务器中,创建名为/test/的虚拟目录,它对应的物理路径是“/virdir/”,并在客户端测试。(1)创建物理目录/virdir/。[root@server~]#mkdir-p/virdir/(2)创建虚拟目录中的默认首页文件。[root@server~]#cd/virdir/[root@servervirdir]#echo"ThisisVirtualDirectorysample。">>index.html8.3.3任务3Apache服务器常规设置(3)修改默认文件的权限,使其他用户具有读和执行权限。[root@servervirdir]#chmod705index.html(4)修改httpd.conf文件,添加下面的语句:
Alias/test"/virdir"利用“servicehttpdrestart”命令重新启动服务。在客户端的浏览器中看到的虚拟目录的访问效果如图8.3.3任务3Apache服务器常规设置11.目录设置Apache目录访问控制选项8.3.3任务3Apache服务器常规设置(1)根目录默认设置。<Directory/>OptionsFollowSymLinks ①AllowOverrideNone ②</Directory>以上代码中带有序号的两行说明如下。①Options字段用来定义目录使用哪些特性,后面的FollowSymLinks指令表示可以在该目录中使用符号链接。Options还可以设置很多功能,常见功能请参考表8-3所示。②AllowOverride用于设置.htaccess文件中的指令类型。None表示禁止使用.htaccess。8.3.3任务3Apache服务器常规设置8.3.3任务3Apache服务器常规设置(2)文档目录默认设置。<Directory"/var/www/html">OptionsIndexesFollowSymLinksAllowOverrideNone ①Orderallow,deny ②Allowfromall ③</Directory>以上代码中带有序号的两行说明如下。①AllowOverride所使用的指令组此处不使用认证。②设置默认的访问权限与Allow和Deny字段的处理顺序。③Allow字段用来设置哪些客户端可以访问服务器。与之对应的Deny字段则用来限制哪些客户端不能访问服务器。8.3.3任务3Apache服务器常规设置Allow和Deny字段的处理顺序非常重要,需要详细了解它们的意思和使用技巧。情况一:Orderallow,deny表示默认情况下禁止所有客户端访问,且Allow字段在Deny字段之前被匹配。如果既匹配Allow字段又匹配Deny字段,则Deny字段最终生效。也就是说Deny会覆盖Allow。情况二:Orderdeny,allow表示默认情况下允许所有客户端访问,且Deny字段在Allow语句之前被匹配。如果既匹配Allow字段又匹配Deny字段,则Allow字段最终生效。也就是说Allow会覆盖Deny。下面举例来说明Allow和Deny字段的用法。【例8-11】允许所有客户端访问。Orderallow,denyAllowfromall8.3.3任务3Apache服务器常规设置【例8-12】拒绝IP地址为00和来自.域的客户端访问。其他客户端都可以正常访问。Orderdeny,allowDenyfrom00Denyfrom.【例8-13】仅允许/24网段的客户端访问,但其中00不能访问。Orderallow,denyAllowfrom/24Denyfrom008.3.3任务3Apache服务器常规设置【例8-14】除了的主机,其他所有人允许访问Apache服务器。Orderallow,denyAllowfromallDenyfrom【例8-15】只允许/8网段的主机访问服务器。Orderdeny,allowDenyfromallAllowfrom/注意:Over、Allowfrom和Denyfrom关键词,它们大小写不敏感,但allow和deny之间以“,”分割,二者之间不能有空格。8.3.4任务4Web应用案例1.案例描述部门内部搭建一台Web服务器,采用的IP地址和端口为:80,首页采用index.html文件。管理员E-mail地址为root@,网页的编码类型采用GB2312,所有网站资源都存放在/var/www/html目录下,并将Apache的根目录设置为/etc/httpd目录。2.解决方案(1)修改主配置文件httpd.conf。设置Apache的根目录为/etc/httpd,设置客户端访问超时时间为120秒,这两个设置为系统默认。[root@server~]#vim/etc/httpd/conf/httpd.conf//修改内容如下:ServerRoot"/etc/httpd"Timeout 1208.3.4任务4Web应用案例(2)设置httpd监听端口80。Listen80(3)设置管理员E-mail地址为root@,设置Web服务器的主机名和监听端口为:80。ServerAdminroot@ServerName:80(4)设置Apache文档目录为/var/www/html。DocumentRoot"/var/www/html"(5)设置主页文件为index.html。DirectoryIndexindex.html(6)设置服务器的默认编码为GB2312。AddDefaultCharsetGB2312(7)注释掉Apache默认欢迎页面。[root@server~]#vim/etc/httpd/conf.d/welcome.conf
将welcome.conf中的4行代码注释掉。如图8-7所示。8.3.4任务4Web应用案例(8)在主页文件里写入测试内容,并将文件权限开放。[root@server~]#cd/var/www/html[root@serverhtml]#echo"ThisisWebtestsample。">>index.html//修改默认文件的权限,使其他用户具有读和执行权限。[root@serverhtml]#chmod705index.html本例只写了一个测试主页,实际情况下应该是将制作好的网页存放在文档目录/var/www/html中,并将其文件名改为index.html。(9)重新启动httpd服务。[root@server~]#servicehttpdrestart(10)测试。在IE地址栏中输入就可以打开我们制作好的首页了。8.3.5任务5虚拟主机的配置1.基于IP地址的虚拟主机的配置基于IP地址的虚拟主机的配置需要在服务器上绑定多个IP地址,然后配置Apache,把多个网站绑定在不同的IP地址上,访问服务器上不同的IP地址,就可以看到不同的网站。【例8-16】假设Apache服务器具有和两个IP地址。现需要利用这两个IP地址分别创建2个基于IP地址的虚拟主机,要求不同的虚拟主机对应的主目录不同,默认文档的内容也不同。配置步骤如下:(1)分别创建“/var/www/ip1”和“/var/www/ip2”两个主目录和默认文件。[root@server~]#mkdir/var/www/ip1/var/www/ip2[root@Server~]#echo"thisis'sweb.">>/var/www/ip1/index.html[root@Server~]#echo"thisis'sweb.">>/var/www/ip2/index.html8.3.5任务5虚拟主机的配置(2)修改httpd.conf文件。该文件的修改内容如下://设置基于IP地址为的虚拟主机<Virtualhost>DocumentRoot/var/www/ip1 //设置该虚拟主机的主目录
DirectoryIndexindex.html //设置默认文件的文件名
ServerAdminroot@
//设置管理员的邮件地址
ErrorLoglogs/ip1-error_log //设置错误日志的存放位置
CustomLoglogs/ip1-access_logcommon //设置访问日志的存放位置</Virtualhost>//设置基于IP地址为的虚拟主机<Virtualhost>DocumentRoot/var/www/ip2 //设置该虚拟主机的主目录
DirectoryIndexindex.html //设置默认文件的文件名
ServerAdminroot@
//设置管理员的邮件地址
ErrorLoglogs/ip2-error_log //设置错误日志的存放位置
CustomLoglogs/ip2-access_logcommon //设置访问日志的存放位置</Virtualhost>8.3.5任务5虚拟主机的配置(3)重新启动httpd服务。(4)在客户端浏览器中可以看到和两个网站的浏览效果。2.基于域名的虚拟主机的配置基于域名的虚拟主机的配置只需服务器有一个IP地址即可,所有的虚拟主机共享同一个IP,各虚拟主机之间通过域名进行区分。要建立基于域名的虚拟主机,DNS服务器中应建立多个主机资源记录,使它们解析到同一个IP地址。例如:.INA.INA8.3.5任务5虚拟主机的配置【例8-17】假设Apache服务器IP地址为。在本地DNS服务器中该IP地址对应的域名分别为和。现需要创建基于域名的虚拟主机,要求不同的虚拟主机对应的主目录不同,默认文档的内容也不同。配置步骤如下:(1)分别创建“/var/www/smile”和“/var/www/long”两个主目录和默认文件。8.3.5任务5虚拟主机的配置(2)修改httpd.conf文件。该文件的修改内容如下:NameVirtualhost //指定虚拟主机所使用的IP地址,该IP地址将对应多个域名。<Virtualhost> //VirtualHost后面可以跟IP地址或域名
DocumentRoot/var/www/smileDirectoryIndexindex.html
ServerName//指定该虚拟主机的FQDNServerAdminroot@ErrorLoglogs/-error_logCustomLoglogs/-access_logcommon</Virtualhost><Virtualhost>DocumentRoot/var/www/longDirectoryIndexindex.html
ServerName//指定该虚拟主机的FQDNServerAdminroot@ErrorLoglogs/-error_logCustomLoglogs/www.long.com-access_logcommon</Virtualho
到此这篇linux就该这样学(Linux就该这样学 第2版 配套PPT)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/58959.html