百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

Apache服务器的基本配置 apache服务器安装与配置

yuyutoo 2024-10-15 16:58 14 浏览 0 评论

Apache服务器软件介绍

网站只有发布以后,用户才能通过Web浏览器访问到该网站中的信息资源。Web服务器软件就是用于发布网站的服务器,而Apache是世界使用排名第一的Web服务器软件,它可以运行在几乎所有广泛使用的计算机平台上。

Apache服务器所提供的资源其实就是一些文件,因此,管理员必须在服务器端先将数据文件写好,并放置在某个特殊的目录下,这个目录就是整个网站的首页位置。另外,客户端必须在浏览器的“地址栏”输入所需要的网址才行。

主要以Linux下源代码包的安装方法介绍Apache服务器的配置

Apache服务器的目录结构

在Linux系统下使用源代码包安装Apache时,我们将Apache服务器的家目录设置在/usr/local/apache2目录下面。在学习Apache服务器配置之前首先了解一下Apache的目录结构

Apache服务器配置库文件目录

  • 除了要了解Apache家目录下的子目录的作用,还有两个比较重要的目录需要掌握,就是存入Apache配置文件和子配置文件的两个目录,如下所示:
  • /etc/httpd/目录:在通过源代码包安装Apache时,为Apache指定的主配置文件httpd.conf存放的目录。
  • /etc/httpd/extra/目录:该目录为Apache扩展及模块配置文件目录。最新版本Apache服务器不仅有一个httpd.conf作为主配置文件,还存在一些辅助配置文件被存放在这个目录下。

Apache服务器配置文件说明

  • /etc/httpd/httpd.conf 主配置文件
  • /etc/httpd/extra/ //显示/etc/httpd/extra/下面的所有附加配置文件
  • httpd-autoindex.conf //配置目录列表的辅配置文件
  • httpd-dav.conf //配置DAV的辅配置文件
  • httpd-default.conf //配置与Apache服务自身相关的辅配置文件
  • httpd-info.conf //配置用于服务器信息和状态显示的辅配置文件
  • httpd-languages.conf //配置语言支持的辅配置文件
  • httpd-manual.conf //配置提供Apache文档访问的辅配置文件
  • httpd-mpm.conf //配置多路处理模块(MPM) 的辅配置文件
  • httpd-multilang-errordoc.conf //配置多语言错误应答的辅配置文件
  • httpd-ssl.conf //配置SSL模块的辅配置文件
  • httpd-userdir.conf //配置用户主目录的辅配置文件
  • httpd-vhosts.conf //配置虚拟主机的辅配置文件

配置文件的语法格式

  • 以“#”作为注释符 ,注解不能出现在指令的后边
  • 使用变量赋值语法风格
  • 文件的每一行包含一个指令,它告诉Apache服务器以某种特定的方式完成某一项特定的任务
  • 在指令的行尾使用反斜杠“\”可以表示续行,但是反斜杠与下一行之间不能有任何其他字符(包括空白字符)
  • 配置文件中的指令是不区分大小写的,但是指令的参数(argument)通常是大小写敏感的
  • 空白行和指令前的空白字符将被忽略,因此可以采用缩进以保持配置层次的清晰
  • 要特别注意即使平台本身是使用反斜杠(\)来分隔路径的 ,通常在配置文件里只用正斜杠(/)来分隔路径总是不会错的

Apache服务器全局参数设置

在Apache 2.2以上以源码包安装的版本中,主配置文件httpd.conf中只包含少量的必须使用的一些与服务自身相关的指令,大部分指令都被分散保存在辅助配置文件中。可以用Include指令和通配符附加这些辅助配置文件到主配置文件httpd.conf中,但默认不附加任何其他辅助配置文件。如果使用其他辅助配置文件中的设置,就需要手动在主配置文件中加载。

在主配置文件httpd.conf中的全局参数

ServerRoot "/usr/local/apache2" #设置服务器目录的绝对路径

#Listen 12.34.56.78:80 #允许Apache绑定指定的IP或者端口,实现对其监听

Listen 80 #Apache绑定指定的端口80

#以下几行加载特定的DSO(Dynamic Shared Object)模块

LoadModule deflate_module modules/mod_deflate.so

LoadModule expires_module modules/mod_expires.so

LoadModule rewrite_module modules/mod_rewrite.so

LoadModule php5_module modules/libphp5.so #动态加载php5模块

#设置子进程的用户和组,<IfModule test>...</IfModule>配置段用于封装根据指定的模块是否启用而决定是否生效的指令。在<IfModule>配置段中的指令仅当test为真的时候才进行处理。如果test为假,所有其间的指令都将被忽略

<IfModule !mpm_netware_module>

<IfModule !mpm_winnt_module>

User daemon #设置实际提供服务的子进程的用户

Group daemon #设置提供服务的Apache子进程运行时的用户组

</IfModule>

</IfModule>

ServerAdmin you@example.com #设置在返回给客户端的错误信息中包含的管理员邮件地址

#ServerName www.example.com:80 #设置服务器用于辨识自己的主机名和端口号

DocumentRoot "/usr/local/apache2/htdocs" #设置Web文档根目录,默认存放网页位置

<IfModule dir_module>

DirectoryIndex index.html #指令用于指定目录中默认的索引文件名称

</IfModule>

附加配置文件httpd-default.conf中的全局参数

Timeout 300

#服务器在断定请求失败前等待的秒数

KeepAlive On

#启用HTTP持久链接

MaxKeepAliveRequests 100

#一个持久链接中允许的最大请求数量

KeepAliveTimeout 5

#持久链接中服务器在两次请求之间等待的秒数

HostnameLookups Off

#启用对客户端IP的DNS查找

附加配置文件httpd-mpm.conf中的全局参数

#设置prefork多路处理模块

<IfModule mpm_prefork_module>

StartServers 5 #设置服务器启动时建立的子进程数量

MinSpareServers 5 #设置空闲子进程的最小数量

MaxSpareServers 10 #设置空闲子进程的最大数量

MaxClients 150 #设置Apache的最大连接数

MaxRequestsPerChild 0 #设置每个子进程在其生存期内允许伺服的最大请求数量

</IfModule>


相关推荐

墨尔本一华裔男子与亚裔男子分别失踪数日 警方寻人

中新网5月15日电据澳洲新快网报道,据澳大利亚维州警察局网站消息,22岁的华裔男子邓跃(Yue‘Peter’Deng,音译)失踪已6天,维州警方于当地时间13日发布寻人通告,寻求公众协助寻找邓跃。华...

网络交友须谨慎!美国犹他州一男子因涉嫌杀害女网友被捕

伊森·洪克斯克(图源网络,侵删)据美国广播公司(ABC)25日报道,美国犹他州一名男子于24日因涉嫌谋杀被捕。警方表示,这名男子主动告知警局,称其杀害了一名在网络交友软件上认识的25岁女子。雷顿警...

一课译词:来龙去脉(来龙去脉 的意思解释)

Mountainranges[Photo/SIPA]“来龙去脉”,汉语成语,本指山脉的走势和去向,现比喻一件事的前因后果(causeandeffectofanevent),可以翻译为“i...

高考重要考点:range(range高考用法)

range可以用作动词,也可以用作名词,含义特别多,在阅读理解中出现的频率很高,还经常作为完形填空的选项,而且在作文中使用是非常好的高级词汇。...

C++20 Ranges:现代范围操作(现代c++白皮书)

1.引言:C++20Ranges库简介C++20引入的Ranges库是C++标准库的重要更新,旨在提供更现代化、表达力更强的方式来处理数据序列(范围,range)。Ranges库基于...

学习VBA,报表做到飞 第二章 数组 2.4 Filter函数

第二章数组2.4Filter函数Filter函数功能与autofilter函数类似,它对一个一维数组进行筛选,返回一个从0开始的数组。...

VBA学习笔记:数组:数组相关函数—Split,Join

Split拆分字符串函数,语法Split(expression,字符,Limit,compare),第1参数为必写,后面3个参数都是可选项。Expression为需要拆分的数据,“字符”就是以哪个字...

VBA如何自定义序列,学会这些方法,让你工作更轻松

No.1在Excel中,自定义序列是一种快速填表机制,如何有效地利用这个方法,可以大大增加工作效率。通常在操作工作表的时候,可能会输入一些很有序的序列,如果一一录入就显得十分笨拙。Excel给出了一种...

Excel VBA入门教程1.3 数组基础(vba数组详解)

1.3数组使用数组和对象时,也要声明,这里说下数组的声明:'确定范围的数组,可以存储b-a+1个数,a、b为整数Dim数组名称(aTob)As数据类型Dimarr...

远程网络调试工具百宝箱-MobaXterm

MobaXterm是一个功能强大的远程网络工具百宝箱,它将所有重要的远程网络工具(SSH、Telnet、X11、RDP、VNC、FTP、MOSH、Serial等)和Unix命令(bash、ls、cat...

AREX:携程新一代自动化回归测试工具的设计与实现

一、背景随着携程机票BU业务规模的不断提高,业务系统日趋复杂,各种问题和挑战也随之而来。对于研发测试团队,面临着各种效能困境,包括业务复杂度高、数据构造工作量大、回归测试全量回归、沟通成本高、测试用例...

Windows、Android、IOS、Web自动化工具选择策略

Windows平台中应用UI自动化测试解决方案AutoIT是开源工具,该工具识别windows的标准控件效果不错,但是当它遇到应用中非标准控件定义的UI元素时往往就无能为力了,这个时候选择silkte...

python自动化工具:pywinauto(python快速上手 自动化)

简介Pywinauto是完全由Python构建的一个模块,可以用于自动化Windows上的GUI应用程序。同时,它支持鼠标、键盘操作,在元素控件树较复杂的界面,可以辅助我们完成自动化操作。我在...

时下最火的 Airtest 如何测试手机 APP?

引言Airtest是网易出品的一款基于图像识别的自动化测试工具,主要应用在手机APP和游戏的测试。一旦使用了这个工具进行APP的自动化,你就会发现自动化测试原来是如此简单!!连接手机要进行...

【推荐】7个最强Appium替代工具,移动App自动化测试必备!

在移动应用开发日益火爆的今天,自动化测试成为了确保应用质量和用户体验的关键环节。Appium作为一款广泛应用的移动应用自动化测试工具,为测试人员所熟知。然而,在不同的测试场景和需求下,还有许多其他优...

取消回复欢迎 发表评论: