当前位置:首页 » 网页前端 » httpdweb服务器
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

httpdweb服务器

发布时间: 2022-11-28 05:47:58

① Apache配置用户的Web服务器

body{
line-height:200%;
}
Apache配置用户的Web服务器
每个用户Web服务器的作用是,在安装了Apache本地计算机上,拥有用户账号的每个用户都能假设自己的独立Web服务器,其操作步骤如下。
(1)编辑文件“etc/httpd/conf/httpd.conf”,将其中的内容更改为如下所示:
(2)将编辑好的配置文件进行保存,再按如下方式重新启动httpd服务:
[root@rh01
test]#
service
restart

//重新启动httpd服务
(3)在终端命令窗口中每个用户按如下方法建立自己的Web服务器:
[root@rh01
~]#
su
yanghong

//将当前用户切换为yanghong
[yanghong@rh01
root]#
cd/home/yanghong

//将当前用户切换为yanghong的宿主主目录
[yanghong@rh01
~]#
mkdir
public_html

//在yanghong的宿主目录中创建一个目录
[yanghong@rh01
~]#
cd
public_html

//进入test_html目录
[yanghong@rh01
public_html]#
vi
index.html

//创建一个文件,其文件名为index.html
(4)在VI的编辑状态下,按字母键“i”进入VI编辑窗口的左下角就会显示“插入”提示,如图6-11所示。
(5)在窗口中输入需在Web页面中显示的内容,再按“Esc”键退出VI的拆入模式,再直接输入“:qw”,并按“Enter”键将输入的内容保存并退出VI编辑模式。
(6)在Web浏览器位置栏输入“http://localhost/~yanghong”,按“Enter”键打开Web页面,如图6-12所示。需注意的是在用户名的前面必须加上“~”。
推荐阅读:启动和停止apache服务器

② 如何在Windows Server 上通过Apache 架设Web 服务器 (请简述)

这里告诉Apache把配置文件保存在/etc/httpd目录中,其它文件(例如HTML手册文档、CGI-BIN目录)都保存在 /home/httpd目录下。也告诉Apache将最常用的模块作为DSO模块编译。DSO就是Dynamic Shared Object的缩写。通过DSO支持的模式编译Apache,能够随时从Apache里面增加和移除模块,而不需要重新编译它,具体的模块见下文。 第四,在执行./configure 之后,配置脚本会自动生成 Makefile。这时,我们就可以开始编译源码了。 #make源码编译完成后,就要使用make install安装Apache至缺省的目录下。当然也可以通过以下命令: #rpm -ivh apache*.rpm 安装Apache的RPM包。这种方法较为简单,因此不再详细介绍。 配置安装完Apache后,开始它的配置工作。在其主目录下有httpd.conf、access.conf、srm.conf 及Magic等四个文件,其中httpd.conf是主要的配置文件,access.conf是访问控制配置文件,srm.conf 则是对于Web主机的文件资源的配置文件。Magic是针对mime模块的设置,我们一般不改动这个文件。 在Apache运行的时候,它先调用httpd.conf,接着是srm.conf,最后是access.conf。在较新的Apache发行版本中,它建议srm.conf和access.conf 两个文件的内容为空,把设置选项完全存放在httpd.conf之中,这样会更加有利于服务器的安全性。 下面就以httpd.conf来开始我们神奇的Web网络世界。 1.全局环境变量的设置 httpd.conf是以全局环境变量的设置开始的。我们将要一步步介绍其具体的参数。 ServerType standalone ServerRoot "/etc/httpd" 第一行“ServerType”指令,说明Apache是以一个独立的(Standalone)守护进程的身份运行于后台,还是由另外的后台守护进程(Xinetd)在接到HTTP请求的时候唤醒。对于正式的互联网站点来说,standalone可以提供比xinetd方式更快的客户端响应速度。因此我们选用standalone模式。第二行代码介绍了该服务器配置文件的相对根目录,一般是/etc/httpd,我们在安装时已经设置好。请注意,不要在此目录最后加“/”。 LockFile /var/lock/httpd.lock PidFile /var/run/httpd.pid ScoreBoardFile /var/run/httpd.scoreboard LockFile在安装Apache时指定选用了USE_FCNTL _SERIALIZED_ACCEPT,USE_FLOCK_SERIALIZED_ACCEPT等参数。作为Apache连接出现错误的记录文件,它会把进程的PID值自动加在该文件中。请注意,该文件应保存在本地的硬盘中。PidFile记录着每次服务器运行时的进程号。ScoreBoardFile是某些特定系统上服务程序中父子进程通讯记录的文件。 #ResourceConfig conf/srm.conf #AccessConfig conf/access.conf 以上两项是指定服务器资源及控制权限的文件,在默认情况下并不使用它们。

③ 第五章:Web服务器

5.1各种形状和尺寸的Web服务器
Web服务器会对HTTP请求进行处理并提供响应。术语“Web服务器”可以用来表示Web服务器的软件,也可以用来表示提供Web页面的特定设备或计算机。
Web服务器有着不同的风格、形状和尺寸。有普通的10行Perl脚本的Web服务器、50MB的安全商用引擎以及极小的卡上服务器。但不管功能有何差异,所有的 Web服务器都能够接收请求资源的 HTTP请求,将内容回送给客户端(参见图1-5)。
5.1.1Web服务器的实现
Web服务器实现了HTTP和相关的TCP连接处理。负责管理Web服务器提供的资源,以及对Web服务器的配置、控制及扩展方面的管理。
Web服务器逻辑实现了HTTP 协议、管理着Web资源,并负责提供Web服务器的管理功能。Web服务器逻辑和操作系统共同负责管理TCP连接。底层操作系统负责管理底层计算机系统的硬件细节,并提供了TCP/IP网络支持、负责装载Web资源的文件系统以及控制当前计算活动的进程管理功能。

5.3实际的Web服务器会做些什么
例5-1显示的 Perl服务器是一个Web服务器的小例子。最先进的商用Web服务器要比它复杂得多,但它们确实执行了几项同样的任务,如图5-3所示。
(1)建立连接一—接受一个客户端连接,或者如果不希望与这个客户端建立连接,就
将其关闭。
(2)接收请求——从网络中读取一条HTTP请求报文。(3)处理请求——对请求报文进行解释,并采取行动。(4)访问资源-———访问报文中指定的资源。
(5)构建响应——创建带有正确首部的 HTTP响应报文。(6)发送响应——将响应回送给客户端。
(7)记录事务处理过程—-将与已完成事务有关的内容记录在一个日志文件中。

5.4第一步——接受客户端连接
如果客户端已经打开了一条到服务器的持久连接,可以使用那条连接来发送它的请求。否则,客户端需要打开一条新的到服务器的连接(回顾第4章,复习一下HTTP的连接管理技术)。

5.4.1处理新连接
客户端请求一条到Web服务器的TCP连接时,Web服务器会建立连接,判断连接的另一端是哪个客户端,从TCP连接中将IP地址解析出来。'一旦新连接建立起来
并被接受,服务器就会将新连接添加到其现存Web服务器连接列表中,做好监视连接上数据传输的准备。
Web服务器可以随意拒绝或立即关闭任意一条连接。有些Web服务器会因为客户端IP地址或主机名是未认证的,或者因为它是已知的恶意客户端而关闭连接。Web服务器也可以使用其他识别技术。

5.4.2客户端主机名识别
可以用“反向 DNS”对大部分Web服务器进行配置,以便将客户端IP地址转换成客户端主机名。Web服务器可以将客户端主机名用于详细的访问控制和日志记录。但要注意的是,主机名查找可能会花费很长时间,这样会降低Web事务处理的速度。很多大容量Web服务器要么会禁止主机名解析,要么只允许对特定内容进行解析。
可以用配置指令HostnameLookups启用Apache的主机查找功能。比如,例5-2中的Apache配置指令就只打开了HTML和CGI资源的主机名解析功能。
例5-2配置Apache,为 HTML和CGI资源查找主机名
HostnameLookups off
<Files ~" - 《html |htmlcgi)$">
HostnameLookups on
</Files>

5.5第二步—接收请求报文
连接上有数据到达时,Web服务器会从网络连接中读取数据,并将请求报文中的内容解析出来(参见图5-5)。
解析请求报文时,Web服务器会:
·解析请求行,查找请求方法、指定的资源标识符(URI)以及版本号,3各项之
间由一个空格分隔,并以一个回车换行(CRLF)序列作为行的结束,“
·读取以CRLF结尾的报文首部;
检测到以CRLF结尾的、标识首部结束的空行(如果有的话)﹔
·如果有的话(长度由content-Length首部指定),读取请求主体。

解析请求报文时,Web服务器会不定期地从网络上接收输入数据。网络连接可能随时都会出现延迟。Web服务器需要从网络中读取数据,将部分报文数据临时存储在内存中,直到收到足以进行解析的数据并理解其意义为止。
5.5.1 报文的内部表示法
有些Web服务器还会用便于进行报文操作的内部数据结构来存储请求报文。比如,数据结构中可能包含有指向请求报文中各个片段的指针及其长度,这样就可以将这些首部存放在一个快速查询表中,以便快速访问特定首部的具体值了(参见图5-6)。

5.5.2连接的输入/输出处理结构
高性能的 Web服务器能够同时支持数千条连接。这些连接使得服务器可以与世界各地的客户端进行通信,每个客户端都向服务器打开了一条或多条连接。某些连接可能在快速地向Web服务器发送请求,而其他一些连接则可能在慢慢发送,或者不经常发送请求,还有一些可能是空闲的,安静地等待着将来可能出现的动作。
因为请求可能会在任意时刻到达,所以Web服务器会不停地观察有无新的Web请求。不同的Web服务器结构会以不同的方式为请求服务,如图5-7所示。
·单线程Web服务器(参见图5-7a)
单线程的Web服务器一次只处理一个请求,直到其完成为止。一个事务处理结束之后,才去处理下一条连接。这种结构易于实现,但在处理过程中,所有其他连接都会被忽略。这样会造成严重的性能问题,只适用于低负荷的服务器,以及type-o-serve这样的诊断工具。
·多进程及多线程Web服务器(参见图5-7b)
多进程和多线程Web服务器用多个进程,或更高效的线程同时对请求进行处理。3可以根据需要创建,或者预先创建一些线程/进程。°有些服务器会为每条连接分配一个线程/进程,但当服务器同时要处理成百、上千,甚至数以万计的连接时,需要的进程或线程数量可能会消耗太多的内存或系统资源。因此,很多多线程Web服务器都会对线程/进程的最大数量进行限制。
·复用I/O的服务器(参见图5-7c)
为了支持大量的连接,很多Web服务器都采用了复用结构。在复用结构中,要同时监视所有连接上的活动。当连接的状态发生变化时(比如,有数据可用,或出现错误时),就对那条连接进行少量的处理,处理结束之后,将连接返回到开放连接列表中,等待下一次状态变化。只有在有事情可做时才会对连接进行处理,在空闲连接上等待的时候并不会绑定线程和进程。
·复用的多线程Web服务器(参见图5-7d)
有些系统会将多线程和复用功能结合在一起,以利用计算机平台上的多个CPU.多个线程(通常是一个物理处理器)中的每一个都在观察打开的连接(或打开的连接中的一个子集),并对每条连接执行少量的任务。

5.6第三步———处理请求
一旦Web服务器收到了请求,就可以根据方法、资源、首部和可选的主体部分来对请求进行处理了。
有些方法(比如POST)要求请求报文中必须带有实体主体部分的数据。其他一些方法(比如OPTIONS)允许有请求的主体部分,也允许没有。少数方法(比如GET)禁止在请求报文中包含实体的主体数据。
这里我们并不对请求的具体处理方式进行讨论,因为本书其余大多数章节都在讨论这个问题。

5.7第四步——-对资源的映射及访问
Web 服务器是资源服务器。它们负责发送预先创建好的内容,比如HTML页面或JPEG 图片,以及运行在服务器上的资源生成程序所产生的动态内容。

5.7.1 docroot
Web服务器支持各种不同类型的资源映射,但最简单的资源映射形式就是用请求URI作为名字来访问Web服务器文件系统中的文件。通常,Web服务器的文件系统中会有一个特殊的文件夹专门用于存放Web内容。这个文件夹被称为文档的根目录(document root,或docroot)。Web服务器从请求报文中获取URI,并将其附加在文档根目录的后面。
在图5-8中,有一条对/specials/saw-blade.gif 的请求到达。这个例子中Web服务器的文档根目录为/us/local/httpd/files。Web服务器会返回文件/usr/local/httpd/files/specials/saw-blade.gif。

在配置文件httpd.conf中添加一个 DocumentRoot行就可以为Apache Web服务器设置文档的根目录了:
DocumentRoot /usr/ local/httpd/files
服务器要注意,不能让相对URL退到docroot之外,将文件系统的其余部分暴露出来。比如,大多数成熟的Web服务器都不允许这样的URI看到Joe的五金商店文档根目录上一级的文件:
http://www.joes-hardware.com/ ..

5.8.3重定向
Web服务器有时会返回重定向响应而不是成功的报文。Web服务器可以将浏览器重定向到其他地方来执行请求。重定向响应由返回码3XX说明。Location响应首部包含了内容的新地址或优选地址的URI。重定向可用于下列情况。
·永久删除的资源
资源可能已经被移动到了新的位置,或者被重新命名,有了一个新的URL。Web服务器可以告诉客户端资源已经被重命名了,这样客户端就可以在从新地址获取资源之前,更新书签之类的信息了。状态码301 Moved Permanently就用于此类重定向。·临时删除的资源
如果资源被临时移走或重命名了,服务器可能希望将客户端重定向到新的位置上去。但由于重命名是临时的,所以服务器希望客户端将来还可以回头去使用老的URL,不要对书签进行更新。状态码303 See Other以及状态码307 TemporaryRedirect就用于此类重定向。

④ web服务器有哪些

常见的WEB服务器有:

1、ApacheApache是世界使用排名第一的Web服务器软件。

它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。

2、IIS是英文Internet Information Server的缩写,译成中文就是"Internet信息服务"的意思。

它是微软公司主推的服务器,最新的版本是Windows2008里面包含的IIS 7,IIS与Window Server完全集成在一起,因而用户能够利用Windows Server和NTFS(NT File System,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet和Intranet站点。

3、GFEGoogle的web服务器,用户数量激增。目前紧逼iis。

4、Nginx不仅是一个小巧且高效的HTTP服务器,也可以做一个高效的负载均衡反向代理,通过它接受用户的请求并分发到多个Mongrel进程可以极大提高Rails应用的并发能力。

5、Lighttpd

是由德国人 Jan Kneschke 领导开发的,基于BSD许可的开源WEB服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销,CPU占用率低,效能好,以及丰富的模块等特点。

Lighttpd 是众多OpenSource轻量级的web server中较为优秀的一个。支持FastCGI, CGI, Auth, 输出压缩(output compress), URL重写, Alias等重要功能。

6、Zeus是一个运行于Unix下的非常优秀的Web Server,据说性能超过Apache,是效率最高的Web Server之一。

7、Sun的Java系统Web服务器也就是以前的Sun ONE Web Server。主要出现在那些运行Sun的Solaris操作系统的关键任务级Web服务器上。

它最新的版本号是6.1,可以支持x86版本Solaris,Red Hat Linux,HP-UX 11i, IBM AIX,甚至可以支持Windows,但它的大多数用户都选择了SPARC版本的Solaris操作系统。

8、Resin提供了最快的jsp/servlets运行平台。在java和javascript的支持下,Resin可以为任务灵活选用合适的开发语言。Resin的一种先进的语言XSL(XML stylesheet language)可以使得形式和内容相分离。

(4)httpdweb服务器扩展阅读:

1、Apache服务器优缺点:

优点:小巧,灵活,可扩展,稳定;

缺点:软件开源,所以很多的漏洞可能很容易被人查找到。

2、Nginx服务器优缺点:

优点:压缩率高,支持负载均衡,速度快;

缺点:需要掌握熟练的Linux命令才能应用;

3、IIS服务器优缺点:

优点:安装配置简单,学习起来容易;

缺点:平台适用性单一,安全性有待提高。

4、WebLogic服务器优缺点:

优点:安全性高,专业性强,耦合度低;

缺点:不容易掌握,需要有一定的专业积累才能熟练应用。

⑤ Web服务器的种类有哪些各自有哪些优缺点

如今的Web服务器有很多种,大家在做项目的时候根据自己的需求进行灵活的选择。下面小编就给大家分享一下目前都有哪些Web服务器以及他们的优缺点。
01
Apache
Apache也被叫做httpd服务器,是目前使用最广泛的web服务器,它被应用于各种平台之中。Apache刚开始被推出的时候有很多的缺陷,如今已经被修复的越来越完善,如果你是web服务器的钻研者,小编建议你一定要学习一下Apache的使用。
优点:小巧,灵活,可扩展,稳定。
缺点:软件开源,所以很多的漏洞可能很容易被人查找到。
02
Nginx
Nginx是Linux平台下的优秀Web服务器,小编以前用过这个服务器,它让本来运行很慢的应用程序提升了很大的速度。
优点:压缩率高,支持负载均衡,速度快
缺点:需要掌握熟练的Linux命令才能应用
03
IIS
IIS是微软平台的Web服务器,是针对Windows平台的服务器。它和NET语言非常的搭配,新手掌握起来也比较快。
优点:安装配置简单,学习起来容易
缺点:平台适用性单一,安全性有待提高
04
WebLogic
WebLogic是专门应用于企业级开发的web服务器,比较常见的是和Java语言搭配,使用起来和Apache差不多,同时它的架构也非常的优秀。
优点:安全性高,专业性强,耦合度低
缺点:不容易掌握,需要有一定的专业积累才能熟练应用
05
Tomcat
Tomcat是很多Java学习者都非常熟悉的web服务器,一般刚开始学习Java Web开发的人都会使用Tomcat作为服务器进行练习。它既有可视化的操作界面,也有命令语句,是不错的入门级服务器。
优点:简单易掌握,部署容易,应用广泛
缺点:扩展性不强,可配置性弱,大并发能力不强
06
Lighttpd
Lighttpd是一款开源的web服务器,比较的轻巧,功能也很多。目前在使用率上比较少,还没有推广起来。
优点:小巧精致,功能强大
缺点:漏洞较多,学习资源不多
07
Sun
Sun是一款针对Solaris的web服务器,应用范围不是很广泛,只应用于Sun公司的相应web产品。另外一般的开发者轻易的用不了这款服务器。
优点:针对性强,并发性高,速度快,效率高
缺点:掌握难,适应性不高
08
Jetty
Jetty是专门针对Java Web的服务器,它被用来运行Servlet程序,是众多服务器中最局限的一个了。小编并不建议大家掌握这款服务器。
优点:内容简单,容易掌握

⑥ Linux 如何开启web服务器redhat

1,基于apache的web服务器基础搭建:
(1)实验环境:一台ip为192.168.10.10的rhel5.9主机作为web服务器,一台ip为192.168.10.15的win7主机作为测试机
(2)查看服务主机软件是否安装
[root@ser1 ~]# rpm -q httpd httpd-manual httpd-devel
package httpd is not installed
package httpd-manual is not installed
package httpd-devel is not installed
(3)安装软件包
[root@ser1 ~]# yum install -y httpd httpd-manual httpd-devel
(4)启动服务
[root@ser1 ~]# service httpd start
启动httpd: [确定]
[root@ser1 ~]# chkconfig httpd on
(5)在win7上测试,无网页缺省下显示红帽测试页
<报错页面存放位置/var/www/error/noindex.html>
.jpg
(6)打开配置文件
[root@ser1 ~]# vim /etc/httpd/conf/httpd.conf
可获得以下重要字段:
目录设置:
<Directory 目录> .. .. </Directory>
访问位置设置:
<LocationURL> .. .. </Location>
虚拟主机设置:
<VirtualHost 监听地址> .. .. </VirtualHost>
常用的全局设置参数:
ServerName本站点的FQDN名称
DocumentRoot网页文档的根目录:缺省/var/www/html/
DirectoryIndex默认索引页/首页文件:一般设为index.html index.php
ErrorLog错误日志文件的位置
CustomLog 访问日志文件的位置
Listen 监听服务的IP地址、端口号
ServerRoot 服务目录:/etc/httpd/
Timeout网络连接超时,默认 300 秒
KeepAlive是否保持连接,可选On或Off
MaxKeepAliveRequests每次连接最多处理的请求数
KeepAliveTimeout保持连接的超时时限
Include 可包含其他子配置文件: /etc/httpd/conf.d/
(7)创建测试网页
[root@ser1 ~]# vim /var/www/html/index.html
<h1>
This is a test page !!!
</h1>
~
(8)win7下测试,主页变为测试网页
.jpg
2,基于apache的web服务器的访问控制:
(1)web服务的地址限制
I,rder 配置项,定义控制顺序
allow,deny 先允许后拒绝,缺省拒绝所有;冲突时,拒绝生效;allow不设置,拒绝所有
deny,allow 先拒绝后允许,缺省允许所有;冲突时,允许生效;deny不设置,允许所有
II,Allow/Deny from 配置项,设置权限
Allow from 地址1 地址2 .. ..
Deny from 地址1 地址2 .. ..
配置如下:
[root@ser1 ~]# vim /etc/httpd/conf/httpd.conf
331 #
332 Orderallow,deny
333 Allowfrom 192.168.20.0/24
334
335 </Directory>
[root@ser1 ~]# service httpd restart……重启服务
停止httpd: [确定]
启动httpd: [确定]
在win7上测试,测试完成并还原配置文件:
.jpg

⑦ Apache 服务

一、介绍

二、Linux下apache的安装

三、apache的基础信息

四、配置apache服务

五、apache的虚拟主机

六、Apache httpd.conf配置详解

七、特殊使用场景

       1. Linux Apache配置多个站点同时运行

Apache HTTP  Server (简称Apache)是 Apache软件基金会 的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。 [2] 

Apache  HTTP服务器 是一个模块化的服务器,源于NCSAhttpd服务器,经过多次修改,成为世界使用排名第一的 Web服务器 软件。

它可以运行在几乎所有广泛使用的 计算机平台 上。

Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的 Web服务器 软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是 自由软件 ,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做 代理服务器 来使用。

yum install httpd -y      #安装apache软件包

systemctl start httpd      #打开服务

systemctl enable httpd    #开机自启动

systemctl stop firewalld    #关闭防火墙

systemctl disable firewalld  #开机不启动防火墙

systemctl restart httpd#重新开启

firewalld-cmd --permanent --add-service=http  #在防火墙策略中添加http和https服务

firewalld-cmd --permanent --add-service=https

firewall-cmd --permanent --add-port=8080/tcp

firewalld-cmd --reload  #重新加载策略

firewall-cmd --list-all  #查看防火墙:

apache还有一个使用手册:需要安装httpd-manual包

yum install httpd-manual -y

各个主要子目录的用途如下:

bin:存放httpd服务的各种执行程序文件。包括主程序httpd、服务控制工具apachectl等。

cgi-bin:存放各种CGI程序文件。

logs:存放httpd服务的日志文件。

conf:存放httpd服务的各种配置文件,包括主配置文件httpd.conf、增强配置子目录extra等。

htdocs:存放网页文档,包括默认首页文件index.html等。

mole:存放httpd服务的各种模块文件。

1.在默认发布目录发布内容

主配置目录: /etc/httpd/conf

主配置文件:/etc/httpd/conf/httpd.conf

子配置目录:/etc/httpd/conf.d

子配置文件:/etc/httpd/conf.d/*.conf

默认发布目录:/var/www/html

默认发布文件:index.html

默认端口:80

默认安全上下文:httpd_sys_content_t

程序开启默认用户:apache

apache日志:/etc/httpd/logs/*

netstat -antlupe | grep httpd   ##查看当前http服务的网络接口

2.修改默认端口

vim /etc/httpd/conf/httpd.conf

Listen 8080                      ##修改默认端口为8080

3.修改默认发布文件:

默认发布文件就是访问apache时没有指定文件名称时默认访问的文件。

这个文件可以指定多个,有访问顺序

vim /etc/httpd/conf/httpd.conf

DirectoryIndex  westos.html  index.html

##当index.html不存在时,访问westos.html                                       

##如果将westos.html放到index.html前面,

在两个文件都存在的情况下会默认访问westos.html里面的内容

##如果没编辑/etc/httpd/conf/httpd.conf(没添加加westos.html),

要想看到westos的页面,则在浏览器中输入:http端IP/westos.html 即可

# systemctl restart httpd.service  修改完配置文件记得一定要重启服务生效

4.修改默认发布目录

vim /etc/httpd/conf/httpd.conf

DocumentRoot "/www/html"

<Directory "/www/html">

        Require all granted

</Directory>

index.html:apache默认发布文件

news.conf 或 music.conf:apache子配置文件

恢复默认发布目录,并创建默认文件index.html

cd /etc/httpd/conf.d/                      #进入apache服务子配置目录

vim adefault.conf                          #建立默认发布目录配置文件

<VirtualHost _default_:80>

      DocumentRoot /var/www/html            #发布文件路径

      CustomLog "logs/adefault.log" combined  #日志路径,这里写相对路径,内容在/etc/httpd/logs/*.log里面

</VirtualHost>

https://www.cnblogs.com/mzhaox/p/11216635.html

1. Linux Apache配置多个站点同时运行

      这样一种场景;我们有一台服务器;但是想挂多个网站;那么Apache下配置虚拟主机可以满足这个需求;

1). 比较简单的是基于主机名的配置步骤如下:

step0:示例环境:

      ip:115.28.17.191

      域名:junyao.com

                thinkbjy.com

      目录:  /var/www/html/junyao 

                  /var/www/html/thinkbjy

step1:修改hosts文件

    [root@iZ28qa8jt4uZ /]# ifconfig;              //查看ip并记录自己的ip地址   

    [root@iZ28qa8jt4uZ /]# vim /etc/hosts;                    //修改hosts文件 添加如下两行内容

        115.28.17.191 junyao.com

        115.28.17.191 anlianma.com

step2:修改httpd.conf文件

    [root@iZ28qa8jt4uZ /]# vim /etc/httpd/conf/httpd.conf;     //修改httpd.conf文件 删除990行 NameVirtualHost *:80前的#注释

   step3:修改httpd-vhosts.conf文件

    [root@iZ28qa8jt4uZ /]# vim /etc/httpd/conf.d/virtual.conf;            //设置httpd-vhosts.conf如下 如没有则新建 

        <VirtualHost *:80>

                DocumentRoot /var/www/html/junyao

                ServerName junyao.com

        </VirtualHost>

        <VirtualHost *:80>

                DocumentRoot /var/www/html/anlianma

                ServerName anlianma.com

        </VirtualHost>

    虚拟主机配置到此结束;在对应的目录下新建html页面测试即可;

2). 另一种方式是

          实际应用中,一个使用自己独有的配置文件,另一个使用默认Apache配置

          Apache默认配置不表述。下面仅仅介绍独立配置文件,以zabbix为例

⑧ httpd简介

httpd具有以下特性:

其中并行处理模式MPM(多路处理模块)包含了三种运行模式。分别为prefork、worker和event。

profork是一个两级进程模型,父进程管理子进程,每个进程响应一个请求。由一个主进程负责生成多个子进程以及回收子进程、创建套接字、接收请求,并将请求派发给某个子进程进行处理。每个子进程只负责处理一个请求。其工作模型:预先生成几个空闲进程,等待用于响应用户请求,设定最大空闲和最小空闲;所有已建立的套接字由客户端进程和服务期端子进程进行通信,一旦出现空闲,会回收子进程。
特点:进城之间完全独立,无需担心线程安全问题。但进程占用的系统资源较多,在处理高并发请求时无法快速处理。
其在httpd2.2为的配置:

worker是一个三级结构、多进程多线程的模式,其在启动时也预先fork了几个子进程,每个子进程能够生产若干个服务线程和若干个监听线程,每个服务线程处理一个请求,监听线程负责接入请求并将其传递给服务线程处理和应答。线程比起进程会更轻量,因为线程通常会共享父进程的内存空间,因此内存的占用会减少些,在高并发的场景下表现比prefork模式更好。其工作模型:

worker模式的特点:线程比起进程会更轻量级,因此占用用内存少,处理高并发请求时性能更好。但是当一个线程出现问题的时候会导致同一进程下的线程也会出现问题。在keep-alive长连接的方式下,某个线程会被一直占用,即使中间没有请求,也需要等待到超时才会被释放。
在httpd2.2中的配置

event是一个事件驱动模型,是一个两级结构的多进程模型,父进程管理子进程,子进程通过event-driven机制直接响应多个请求。event模式解决了在keep-alive模式下,线程被长期占用直到超时,从而导致资源浪费的问题。
在event模块中,有一个专门的线程来管理这些keep-alive类型的线程,当接收到真实的请求时,会将请求传递给服务线程,执行完毕后,会将对应的服务线程释放,这样就能实现线程的异步非阻塞。
在httpd2.2中的配置:

示例
Centos6系统下实现httpd-2.2的安装,并分别实现prefork、worker、event等几种工作方式.

1、centos6上安装装httpd-2.2

prefork模式
实现prefork模式。httpd的默认运行模式为prefork,查看其运行模式为:

在/etc/httpd/conf/httpd.conf文件中查看prefork的设置

启动httpd服务并查看相关进程状态:

修改/etc/httpd/conf/httpd.conf中的prefork配置

重启httpd服务并常看进程状态:

worker模式
修改配置文件/etc/sysconfig/httpd配置文件,将文件中HTTPD=/usr/sbin/httpd.worker这一句取消注释。然后重启服务查看进程状态。

然后修改/etc/httpd/conf/httpd.conf文件中的worker配置

event模式

修改配置文件/etc/sysconfig/httpd配置文件,将文件中HTTPD=/usr/sbin/httpd.worker这一句修改为HTTPD=/usr/sbin/httpd.event。然后重启服务查看进程状态。

修改配置文件/etc/httpd/conf/httpd.conf,添加evnet配置

查看进程状态

一次完整的http请求处理过程:

在一次完整的http请求过程中,会出现两种报文,分别是http的请求报文request和http的响应报文response。

以上各字段的含义:

http协议的请求方法共有以下7中

状态响应码是http请求处理返回的结果状态标识,属于响应报文中的内容,熟知常见的状态响应码能帮助我们快速定位故障及进行相应的排错,状态码的类型大体可分为下面几类:

常用的状态码:

httpd服务的主配置文件/etc/httpd/conf/httpd.conf。此文件内容通常以下三大部分组成:

除主配置稳健以外,其余的相关配置文件包括:

这些配置文件在httpd2.4中通常在主配置文件中通过 IncludeOptional conf.d/*.conf 、 Include conf.moles.d/*.conf 进行调用响应目录下的配置文件。路径为相对路径,其根目录由主配置文件中的Serverroot进行设定。

在主配置文件中,修改httpd服务监听IP和接口的格式为:

注意:

示例:

持久链接是指tcp连续建立后,每个资源获取完成后不全断开连接,而是继续等待其它资源请求的进行。对并发访问量较大的服务器,长连接机制会使得后续某些请求无法得到正常响应;此时,设置较短的持久连接时长,以及较少的请求数量来缓解。具体设置如下:

示例:

在httpd服务的主配置文件中,“'Main' server”部分,定义web文档路径映射。

常用的站点访问控制即只有两种:一种是基于文件系统路径的访问控制机制;另一种是基于URL的站点访问控制机制。两者可同时设置
基于文件系统路径:
1、基于源地址实现访问控制,在此设置的目录下所有文件都遵循此处的指令设置。格式为:

2、针对单个文件实现访问控制。其格式为:

3、DSO动态共享对象机制
在/etc/httpd/conf/httpd.conf主配置文件中使用配置指令实现模块加载:

模块文件路径可使用相对路径:相对于ServerRoot(默认为/etc/httpd)
例如:

4、根据模式匹配到的文件实现访问控制。正则表达式要启用引擎,因此建议不使用;其格式为:

基于URL路径:
定义URL的目录,表示在此设置的目录下所有文件都遵循此处的指令设置;

"Directory"中各选项的参数

示例
新建/web/html目录,编辑修改httpd服务,使其能够web访问/web/html目录下的index.html目录文件:

httpd的虚拟主机是利用httpd自带的VirtualHost功能来实现的。一个httpd服务器上配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录。虚拟主机的配置方式为:
在/etc/httpd/conf/httpd.conf主配置文件中修改,或者在//etc/httpd/conf.d/*.conf目录下新建配置文件。

httpd虚拟主机有三种实现方式:
1、基于IP方式的实现:需要给每个虚拟主机设置至少一个IP地址。
示例:
利用virtualhost基于IP的方式实现/var/www/html目录和/web/html目录下的网页文件的同时访问

2、基于port的方式实现:需要为每个虚拟主机使用至少一个独立的port。
示例:
基于port的方式实现/var/www/html目录和/web/html目录下的网页文件的同时访问。

3、基于FQDN的方式实现:为每个虚拟主机使用至少一个FQDN。其配置方式为:如果是httpd-2.2,需要在配置文件中添加 NameVirtualHost IP:PORT

示例:

修改window系统的hosts文件,并测试

基于用户的访问控制是通过http协议自身的认证来实现的。http协议的认证有两种方式:

由于并不是所有浏览器都支持摘要认证,所以一般使用较多的是basic认证方式。其设置过程如下:
1、用htpasswd命令生成提供账号和密码存储的文本文件
htpasswd
语法

选项:

设置过程:

2、编辑配置文件,设置用户认证,然后重启httpd。配置文件既可以是修改主配置文件/etc/httpd/conf/httpd.conf,也可以在/etc/httpd/conf.d/文件加下新建配置文件。

访问服务器测试

有大量用户需要认证时,可使用基于域的认证方式,把用户加入到域中,将用户划分为相应的域组,并根据域组来做相应的访问控制。
1、先创建域组文件:

2、修改配置文件,然后重启服务,登陆访问测试:

⑨ Apache WEB网站服务是什么

Apache WEB网站服务是一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。
Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。

⑩ 了解Web服务器的种类有哪些吗各自有哪些优缺点

现在的Web服务器种类繁多,大家在做项目的时候可以根据自己的需求灵活选择。下面和大家分享一下有哪些Web服务器,以及它们的优缺点。

操作方法

01街头流氓

Apache又称httpd server,是目前应用最广泛的web服务器,应用于各种平台。当Apache首次推出时,它有许多缺陷。现在已经修复完善了。如果你是一名web服务器研究人员,边肖建议你必须学会使用Apache。

优点:紧凑、灵活、可扩展、稳定。

缺点:软件是开源的,所以很多漏洞可能很容易被发现。

08码头

Jetty是一个专用于Java Web的服务器。它用于运行Servlet程序,是众多服务器中最受限制的。边肖不建议你掌握这个服务器。

优点:内容简单,容易掌握。