APACHE架设网站(一)_Linux服务器维护_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

APACHE架设网站(一)

作者:黑客防线网安linux教程网 来源:黑客防线网安linux教程网 浏览次数:0

本篇关键词:网站行程指令服务器
黑客防线网安网讯:第一篇Red Hat Linux Fadora作业系统现在都是使用APACHE 2.0,现在让我们介绍APACHE2.0来架设网站。我们的网站www.linuxunion.net就是使用APACHEL2.0来架设的。启动apache[root@localhost]#...
第一篇


Red Hat Linux Fadora作业系统现在都是使用APACHE 2.0现在让我们介绍APACHE2.0来架设网站我们的网站www.linuxunion.net就是使用APACHEL2.0来架设的

启动apache
[root@localhost]#/etc/rc.d/init.d/httpd start

关闭apache
[root@localhost]#/etc/rc.d/init.d/httpd stop


重新启动apache
[root@localhost]#/etc/rc.d/init.d/httpd restart






APACHE2.0服务器的档案是放在/etc/httpd的目录下。底下的conf目录主要是放置APACHE2.0主要的组态设定档hd.conf、Makefile和安全协定下的档案;底下的conf.d组态目錄是放置APACHE2.0要载入的组态档,包含了php.conf、perl.conf、python.conf和安全协定组态档案l.conf。

设定

/etc/httpd/conf/httpd.conf主要组态设定档


使用vi编辑器来编辑apache

[root@localhost]# vi /etc/httpd/conf/httpd.conf


APACHE的组态设定档httpd.conf是由全域环境组态指令、主服务器组态指令和包含文件Include组态指令所组成。我们也可以将一些组态档使用包含的方式将组态设定档包含进来。
在图中我们将其它虚拟主机的档案设定在外部,再使用Include将该组态设定档包含进来。我们也将Perl.conf、PHP.conf、Python.conf、l.conf、auth_mysql.conf和auth_pgsql.conf的组态档包含进入我们的httpd.conf的组态档。请参考图1-2







/etc/httpd就是APACHE网站服务器所有档案的父目錄

只要在终端打出

[root@localhost]# tree

就会如图1-3所示






设定网站服务器的全域环境组态Global Environment

我们在安装Linux Fedora作业系统的时候,apache套件已经包含在我们的电脑上了,有几处我们是需要修改的。

<lt;1>gt;Global Environment

第三十二行开始是设定网站服务器Apache全域环境组态Global Environment。

32 ### Section 1 :Global Environment


<lt;2>gterverToke指令

第四十二行的ServerToke指令让我们防止远端的使用者观看我们Apche服务器正在执行的元件。如果我们设定註解#,则远端的使用者都可以看到我们服务器的信息。ServerToke指令有四个值,分別是Full、OS、Minimal和ProductOnly,预设是OS。 ServerToke指令控制服务器是否回应送到使用者端包含服务器信息及作业系统形态的标头档栏化。

43 ServerToke OS


<lt;3>gterverRoot指令

ServerRoot指令设定安装APACHE服务器档案位置的地方,预设是在“/etc/httpd”。


56 ServerRoot “/etc/httpd”

ServerRoot指令设定服务器放置的地方。一般而言,它会包含conf、logs、conf.d、modules和build子目錄。

Conf子目錄是放置httpd.conf服务器组态档的地方、logs子目錄是放置服务器记录情況的地方、conf.d子目錄是放置相关组态档被Include指令包含到httpd.conf组态档的地方、modules子目錄是放置我们用LoadModule指令载入模组的地方。


<lt;4>gtcoreBoardFile指令

ScoreBoardFile是设定在某些平台Apache父行程和子行程沟通的档案位置。。
ScoreBoard就是记录我们内部服务器行程的信息,在RedHat Linux Fadora 作业系统里,他将这些状态信息储存在内存中,这样就可以提高存取效能。

66 #ScoreBoardFile run/httpd.scoreboard

<lt;5>gtidFile 指令

PidFile指令是设定行程ID(Proce ID)的档案路径,预设是在run/httpd.pid。Apache使用PidFile来储存超级使用者的行程ID。这个行程信息就是我们Apache执行的常驻行程,当我们要启动Apache服务器是,就会有行程编号,行程编号就放在/etc/httpd/run/httpd.pid 里。当我们要关掉Apache服务器时/etc/init.d/httpd就会使用到这个信息。


72 PidFile run/httpd.pid


<lt;6>gt;Timeout指令、KeepAlive指令和KeepAliveTimeout 指令

从第七十五行到第九十行都是和联机时间Timeout有关,当使用者提出联机要求,服务器就会等待Timeout指令设定的秒数,若超过Timeout所设定的传送或接收的时间,这个联机就会中断,预设Timeout是300秒。

72 Timeout 300

Timeout指令定义Apache会是为了Get要求服务、Post或PUT要求服务和ACKs 的服务三种设定等待时间。
KeepAlive指令设定是否允许持续连接APACHE服务器,预设定是“Off”关闭的,要启动则设为“On”。当提出要求已经被处理了,KeepAlive指令会指示APACHE服务器持续打开连接一段时间。


83 KeepAlive Off
KeepAlive指令可以让在同一个TCP联机的状态来提供多种要求服务。当网页文件有很多图片时,这个功能可以让我们提高将近50%的加速效能。因此,如果我们要想网站加速效能提高,可以将KeepAlive指令设为“On”。

对于HTTP/1.0的使用者,Keep-Alive持续联机不能用在动态内容CGI、I网页和服务器产生的目录索引。对于HTTP/1.1的使用者持续联机是预设的。


MaxKeepAliveRequests指令允许持续连接的数良,0大小无限制。数字越大效能越高。MaxKeepAliveRequests指令限制每次述线要求服务的上限。当KeepAlive为“On”时,MaxKeepAliveRequests的默认值是100较为合理。为了能够提升服务器的效能,我们建议将MaxKeepAliveRequests设定到高一点,可以设为500。



90 MaxKeepAliveRequests 100




KeepAliveTimeout指令会设定在持续连接中,服务器会等待随后要求服务的时间。预设是15秒。在持续的连接中,Apache等待后来要求服务的时间,KeepAliveTimeout指令将会指示这个时间秒数。一旦要求服务被接收,timeout的数值将被Timeout指令使用。

96 KeepAliveTimeout 15


<lt;7>gt;MPMs的组态(多任务模块)


第九十九行到第一百四十六行是设定服务器行程的数量,为了让Apache能够满足服务器的需求服务,Apache需能动态的改变服务器正在执行的行程数量。下面几个参数是我们必需指定的参数。

StartServers指令是设定服务器行程启动的数量。

MiareServers指令设定闲置行程的最小数量。

MaxareServers指令设定闲置行程的最大数量。

Maxclients指令设定同时可允许启动的行程数量。

MaxRequesterChild指令设定每一个子行程可以服务的请求数量。

启动服务器行程的数量。APACHE的行程先启动好,只要有使用者要求,我们就可以服务它。在这裹我们是预设8个APACHE的行程。


MPM为多行程模组(Multi proceing modules)。APACHE2.0支援执行多线程,每个子行程还可以產生多个特定的执行线程。而每个子行程的执行线程可以服务于不同的请求。如果每个Apache可以產生8个子行程,而每个子行程又可以產生25个执行线程,则Apache可以產生8*25=1000个执行线程的服务。当行程是要增加或減少是由閒置执行线程来決定,而其行程是介於MiareServers(最小閒置行程和MaxareServers(最大閒置行程之间)。

行程(Proce)和执行线程(Thread)最大的不同在於,执行线程是属於小行程。因为多个执行线程可以共用程式码、档案和资料,因此执行线程的档案比行程小很多。

这是行程的行程控制表。





这是Apache1.3之前的单一执行线程行程,每一个行程都是单一的执行线程。






这是在Apache 2.0的多个执行线程行程(MPM)。在Apache 2.0中每一个行程都可以产生多个执行线程,每个执行线程都有它自己的寄存器和堆栈,但是它们会共用程式码、数据和档案。这样就可以使用少量的资源来提供更多的服务。







Apache在一开始会启动一个主要的常驻行程(拥有者为超级用户),然后再转换一般没有权限的使用者。Apache会根据目前的负载来新增或移除服务器的行程。如流量减少或者是暂停的行程服务器很多,Apache将自动的Kill(移除)行程,假如很多的要求服务,或者很少的服务器行程在线等待,则Apache会自动新增行程并启动。


使用预设的MPM(多上模块)环境,常常驻Apache 行程被启动时,有八个行程将开始Run(跑起来),并且等待着连接。当有更多的需求服务来到,Apache会确定最少有八个行程已经准备好(ready)来提供服务。当需求的服务已经满j了,而新的联机又来到,Apache将开始Kill(移除)行程,直到这闲置暂停服务的网络服务器行程低于20。服务器行程启动的数量(Start Servers)应该介于Min are Servers(指定闲置行程的最小数量)和Max are Servers(指定闲置行程的最大数量)之间。


Apache使用Max Clients指令(同时可允许启动的行程数量)来限制同时存在行程的数量。这默认值是150,这已经是很高了。但是如果有超过150位的同时连线时,我们则应该提高这个上限。

为了减轻己忆体的负担,而且让这个记忆体缓冲池能够更新,则要限制每一个服务器行程所能提供的要求服务。因此要设定Max Requests Per Child(每一个子行程可以服务的请求数量)。当提供达到1000次要求后,这个行程就会破Kill(移除),也就是说,每一个行程只能服务1000个联机(因为Keep Alive指令是关掉的,所以每个要求服务都是一个连线)。

在多任务模块的环境(MPM),我们可以籍着由限制执于线程的数量来供几或消费。我们可以在Min are Threads指定闲置执行线程的最小数量,在Max are Threads 指定闲置执行线程的最大数量,来控制所有执行线程的数量。当执行线程的数量少于Min are Threads,则多任务模块会增加执行线程的数量。当执行线程的数量多于Max are Threads时,则多任务模块会安排减少执行线程的数量。

IfModule是表示加载模块,module_name为我们加载模块组的名称。

< lfModule module_name >

………
< /IfModule >
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-19273-1.html
网站维护教程更新时间:2012-12-08 13:53:47  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer