Web服务器又称为WWW服务器,它是放置一般网站的服务器。一台Web服务器上可以建立多个网站,各网站的拥有者只需要把做好的网页和相关文件放置在Web服务器的网站中,其他用户就可以通过浏览器访问网站中的网页了。
目前能够提供Web网络服务的程序有IIS、Nginx和Apache等。其中,IIS(Internet Information Services,互联网信息服务)是Windows操作系统中默认的Web服务程序,这是一款图形化的网站管理工具,不仅可以提供Web网站服务,还可以提供FTP、NMTP、SMTP等服务。Nginx程序作为一款轻量级的网站服务软件,因其稳定性和丰富的功能而快速占领服务程序市场,Apache程序目前是市场占有率很高的Web服务程序之一,其跨平台和安全性被广泛认可且拥有快速、可靠、简单的API扩展。Apache软件基金会著名的Logo如图12-1所示,它的名字取自美国印第安人的土著语,寓意拥有高超的作战策略和无穷的耐性。
Apache服务程序可以在Linux操作系统、UNIX操作系统甚至是Windows操作系统中运行,支持基于IP、域名及端口号的虚拟主机功能;支持多种认证方式;集成有代理服务器模块、安全Socket层(SSL);能够实时监视服务状态并定制日志消息;还有着各类丰富的模块支持。
建议配置前临时关闭防火墙和SELinux服务。
【systemctl stop firewalld】
setenorce 0
第1步:手动安装Apache服务程序。注意,使用yum命令进行安装时,跟在命令后面的Apache服务程序的软件包的名称为httpd。
【yum install -y httpd】
第2步:启用httpd服务程序并将其加入开机启动项,使其能够随系统开机自动运行,从而持续为用户提供Web服务。
【systemctl start httpd】
【systemctl enable httpd】
第3步:验证Apache默认网站是否发布成功,在浏览器(这里以Firefox浏览器为例)的地址栏中输入http://127.0.0.1(或服务器IP地址)并按回车键,就可以看到用于提供Web服务的httpd服务程序的默认页面了,如下图所示。
在Linux操作系统中配置服务,其实就是修改服务的配置文件,因此,还需要知道这些配置文件所在的位置及用途,httpd服务程序的主要配置文件及存放位置如表12-1所示。
配置文件的名称 |
存放位置 |
服务目录 |
/etc/httpd |
主配置文件 |
/etc/httpd/conf/httpd.conf |
网站数据目录 |
/var/www/html |
访问日志 |
/var/log/httpd/access_log |
错误日志 |
/var/log/httpd/error_log |
打开httpd服务程序的主配置文件,绝大部分都是以井号(#)开始的注释行,其目的是对httpd服务程序的功能或某一行参数进行介绍,使用户不需要逐行研究这些内容。
在httpd服务程序的主配置文件中,存在三种类型的信息:注释行信息、全局配置参数、区域配置参数。
全局配置参数是一种全局性的配置参数,可作用于所有的子站点,既保证了子站点的正常访问,也有效减少了频繁写入重复参数的工作量。区域配置参数则是单独针对每个独立的子站点进行设置的。就像在大学食堂里打饭,食堂负责打饭的阿姨先给每位同学来一碗标准大小的米饭(全局配置),然后根据每位同学的具体要求给他们盛想吃的菜(区域配置)。配置httpd服务程序时常用的参数及用途描述如表所示。
参 数 |
用 途 |
ServerRoot |
服务目录 |
ServerAdmin |
管理员邮箱 |
User |
运行服务的用户 |
Group |
运行服务的用户组 |
ServerName |
网站服务器的域名 |
DocumentRoot |
定义网站数据目录 |
Directory |
网站数据目录的权限 |
Listen |
监听的IP地址与端口号 |
DirectoryIndex |
默认的索引页面 |
ErrorLog |
错误日志文件 |
CustomLog |
访问日志文件 |
Timeout |
网页超时时间,默认为300秒 |
从表中可知,DocumentRoot参数用于定义网站数据目录,其参数的默认值是把网站数据存放到/var/www/html目录中;而当前网站默认的首页面名称是index.html,因此可以向/var/www/html目录写入一个文件,替换掉httpd服务程序的默认首页面,该操作会立即生效。
执行完上述操作之后,再在Firefox浏览器中刷新httpd服务程序,可以看到该程序的首页面内容已经发生了改变,如下图所示。
【echo "Welcome To Linux-yhy.Com" > /var/www/html/index.html】
默认情况下,网站数据保存在/var/www/html目录中,而在实际情况下,网站数据是可以存放在其他路径下的,把网站数据的目录修改为/home/wwwroot的详细操作步骤如下。
第1步:建立网站数据的保存目录,并创建首页文件。
【mkdir /home/wwwroot】
【echo "The New Web Directory" > /home/wwwroot/index.html】
第2步:打开httpd服务程序的主配置文件,将约第119行的用于定义网站数据保存路径的参数DocumentRoot的路径修改为/home/wwwroot,同时还需要将约第124行的用于定义目录权限的参数Directory后面的路径也修改为/home/wwwroot,如下图所示。
【vim /etc/httpd/conf/httpd.conf】修改Apache配置文件。
修改完毕Apache配置文件后即可保存并退出。
Vim编辑器中显示行号的命令为【:set nu】,如下图所示。
第3步:通过【systemctl restart httpd】命令重新启动httpd服务程序并验证效果,刷新浏览器页面后的内容如下图所示。
注意:刷新后如果显示的依然是httpd服务程序的默认首页面,请检查网站的首页面文件是否不存在或用户权限不足。如果尝试访问http://127.0.0.1/index.html页面时,发现页面中显示“Forbidden,You don't have permission to access /index.html on this server.”,就能确定是SELinux的配置问题,可以使用【setenforce 0】命令临时关闭SELinux后再访问,但这种修改只是临时的,在系统重启后就会失效。