APACHE 配置文件中文版
apache下配置详解
Apache下关于虚拟主机的配置关于虚拟主机的概述:配置虚拟主机主要应用场景:多站点访问,一个服务器放置了多个站点服务。
主要的三种配置方法:1、基于IP 2、基于端口3、基于主机名步骤详解:1.虚拟主机使用的话,必须将中心服务关闭,在/etc/httpd/conf/httpd.conf文件里,将DocumentRoot一行注释掉来关闭中心服务。
2.可以在httpd.conf文件最后面直接添加虚拟主机的配置内容,也可以在/etc/httpd/conf.d/下面创建一个自己的配置文件,如:my.conf文件。
3.my.conf文件配置详解1)基于IP配置<VirtualHost 192.168.0.112:80>ServerName DocumentRoot "/www/"</VirtualHost><VirtualHost 192.168.0.113:80>ServerName DocumentRoot "/www/"</VirtualHost>以上2个虚拟主机配置的IP分别为192.168.0.113和192.168.0.112,端口同为80端口。
这样在浏览器分别输入不同的ip或域名时就会访问到不同的站点。
Tips:如果只有一块网卡可以同过ipaddr add 192.168.0.112 dev eth0来添加辅助ip。
如果是域名方式访问,还需要在windows和linux下的hosts文件里面自行添加域名解析。
关于辅助ip的设置:ipaddr add 192.168.0.112/24 dev eth0这是为网卡设置一个辅助ip。
假如一个网卡的ip地址为192.168.0.22,执行上面的命令,在用ifconfig 查看,会发现有两个ip地址,而192.168.0.22称为主地址(Primary IP address),而192.168.0.112称为辅助地址(secondary IP address),一块网卡是允许有多个IP地址的,所以就算再多添加几个secondary IP 也是合法行的。
APACHE安装配置说明
APACHE安装配置说明⼀、软件下载⼆、环境检查# rpm -qa|grep zlibzlib-devel-1.2.3-3zlib-1.2.3-3# rpm -qa|grep sslopenssl-devel-0.9.8b-10.el5openssl-0.9.8b-10.el5如果需要依赖包,安装其对应的devel包即可,此处仅⽤到zlib和ssl。
另,如果有httpd包,要先卸载掉或停⽌其服务。
三、编译安装1、针对安装⽬的的说明(来⾃INSTALL⽂件)如果是开发者则使⽤此选项,--with-included-apr利于连接apache的代码或者是调试apache,其消除了由于版本或者编译中跟APR或者APR-util代码产⽣的不匹配;如果从⼦版本编译apache,要先运⾏buildconf(需要Python,GNU autoconf和libtool),然后运⾏configure。
发⾏包不⽤。
如果要在FreeBSD5.4之前编译时包含apache的threaded MPM,需要使⽤--enable-threads和--with-mpm 参数在Mac上编译⼦版本,要使⽤GNU Libtool 1.4.2及以上版本2、关于SSL加密和正则表达式(来⾃⽂件README)Apache2.0及以上版本在⽬录modules/ssl/下包含了mod_ssl模块⽤于配置和监听ssl⽹络接⼝的连接。
(另外,⼀些apr-util版本在⽬录srclib/apr-util/ssl/下提供了ssl⽹络接⼝)带有单词crypto的包的名字,可能包含openssl加密库的⽬标代码。
如果apache的加密功能不理想或者要排除再重分配,则可以使⽤包的名字包含nossl的发布包。
Apache使⽤PCRE包包含的正则表达式。
3、对configure参数的说明配置帮助表:-h, --help显⽰帮助信息display this help and exit--help=short ⽤short参数将只显⽰正在运⾏的当前脚本的选项,⽽不能列出适⽤于Apache配置脚本所运⾏的外部配置脚本的选项display optionsspecific to thispackage--help=recursive 使⽤recursive参数将显⽰所有程序包的简短描述display the shorthelp of all theincluded packages-V, --version显⽰版本display version information and exit-q, --quiet, --silent不显⽰checking……信息do notprint`checking...' messages--cache-file=FILE在指定⽂件中存储测试结果cache test results in FILE [disabled]-C, --config-cache 在⽂件config.cache中存储测试结果alias for `--cachefile=config.cache'-n, --no-create configure脚本运⾏结束后不输出结果⽂件,常⽤于正式编译前的测试。
Apache服务器配置
IN CNAME
IN CNAME
在上面的配置中,在提交的DNS正向配置文件以及反向配置文件中, 已经具有如下的A记录和PTR记录,分别为
www
利用httpd.conf我们可以对Apache服务器进行全局 配置、管理或预设服务器的参数定义、虚拟主机的设 置等。httpd.conf是一个文本文件,我们可以用vi编辑 工具进行修改。 httpd.conf文件主要分为三个部分: Section 1: Global Environment (全局变量) Section 2: 'Main' server configuration(主服务器配置) Section 3: Virtual Hosts(虚拟主机配置)
2.配置基于IP的虚拟主机 (1)基于IP虚拟主机的DNS配置 如果用户想要创建两个基于IP的虚拟主机和
这两个虚拟主机站点的共同域名是 。用户可以按照如下所示在DNS正向配置文 件中进行配置:
lth IN
A 192.168.15.212
3.Port 该参数用来指定Apache服务器的监听端口。一般来说,标准的HTTP
服务默认端口号是80,一ቤተ መጻሕፍቲ ባይዱ不要更改这个数值。本例为80端口:
Port 80 4.ServerAdmin
设置Apache服务器管理员的邮件地址。
5.ServerName 该参数使得用户可以自行设置主机名,以取代安装Apache服务器主机
7.MaxKeepAliveRequests 当使用保持连接(persistent connection)功能时,可以使用本参数决定
每次连接所能发出的要求数目的上限。如果此数值为0,则表示没有限制。 建议尽可能使用较高的数值,以充分发挥Apache的高性能,本例设置每次 连接所能发出的要求数目上限为100:
linux-Apache 配置
Apache 配置一、安装Apache下载地址:/1. 安装Apache# tar zxvf httpd-2.2.11.tar.gz# cd httpd-2.2.11# ./configure --prefix=/usr/local/apache --enable-so//编译时加上加载模块参数--enable-so# make# make install2. 配置系统启动时自动启动Apache服务。
# vi /etc/rc.d/rc.local//在rc.local上加入一行/usr/local/apache/bin/apachectl –k start。
二、配置Apache1. 修改httpd.conf文件# vi /usr/local/apache/conf/httpd.conf1)设置根目录的路径根目录是指Apache存放配置文件和日志文件的目录,配置参数为ServerRoot,默认位于“/u sr/local/apache”。
命令如下:2)设置监听IP地址及端口号默认侦听本机所有IP地址的TCP80端口,命令如下:Listen 80用户也可以按自己的需求,使用多个Listen语句在多个地址和端口上侦听客户端请求。
比如:Listen 192.168.99.9:80Linsten 172.16.0.20:80803)设置系统管理员E-m ail使用ServerAdmin参数设置管理员E-m ail,比如管理员的Email地址为root@guoxuemin. cn:4)设置服务器主机的名称参数ServerName用来设置服务器的主机名称,如果没有域名则填入服务器的IP地址,比如服务器的IP地址为192.168.99.9:5)设置主目录的路径用户可以使用参数Document Root配置服务器主目录默认路径,比如,主目录路径为:6)设置默认文件Apache的默认文件名为index.ht ml,可以使用Directory Index参数来配置,比如,将ind ex.php设置为默认文件名:7)测试:打开浏览器,输入地址:http://192.168.99.9,可以打开站点了:2. 配置目录权限使用<Directory 目录路径>和</Directory>设置目录的权限。
apache用法
apache用法Apache是一款流行的web服务器软件,它能够提供网页浏览、动态内容创建、数据库服务等多种功能。
在本文中,我们将介绍Apache 的安装、配置、管理、安全性和优化等方面的知识。
一、安装Apache安装Apache非常简单,您可以从官方网站下载适合您操作系统的安装包。
在安装过程中,您需要选择安装路径、配置文件位置等选项,并设置一些基本参数。
安装完成后,您可以通过浏览器或命令行来测试Apache是否正常运行。
二、配置ApacheApache的配置文件位于`/etc/httpd/conf`目录下,该文件包含了Apache服务器的各种设置。
配置文件使用了较为简洁的语法,方便修改和调整。
您可以使用文本编辑器打开配置文件,根据您的需求进行修改。
在配置文件中,您可以设置虚拟主机、监听地址和端口、启用或禁用某些模块等功能。
同时,您还可以配置SSL证书,以实现安全传输。
配置完成后,需要重新启动Apache服务器,使配置生效。
三、管理ApacheApache提供了多种管理工具,方便您监控和调整服务器状态。
您可以使用命令行工具`apachectl`来查看服务器状态、启动和停止服务、重新加载配置等操作。
此外,您还可以使用Web管理工具,如Apache自带的Web管理界面或第三方工具,通过浏览器进行管理操作。
四、安全性Apache具有较高的安全性,但仍然需要注意一些安全问题。
首先,确保您的配置文件没有安全漏洞,如弱密码、不正确的权限设置等。
其次,及时更新Apache软件和配置文件,以修复潜在的安全漏洞。
最后,限制对配置文件的访问,以防止未经授权的修改。
五、优化Apache优化Apache可以提高服务器的性能和稳定性。
首先,优化虚拟主机配置,根据实际需求设置合适的资源分配和访问控制。
其次,使用缓存技术,如反向代理和缓存服务器,减少对数据库的访问次数。
此外,合理配置服务器硬件资源,如内存、硬盘和CPU,以充分利用服务器性能。
apache配置详解(很详细)
下面简单介绍一下这4个参数的用法。
1> Allow
该参数是控制哪些主机才可以访问目标。
示例:
Allow from 192.64.182.53
Allow from 192.64.182.1 192.64.182.3
表示IP地址为192.64.182.1或192.64.182.3或192.64.182.53才可以访问目标。
directory-path参数必须与被访问文件所在文件系统的路径保持一致。如果有多个非正则表达式,<Directory>配置段符合并包含某文档的目录(或其父目录),那么会以短目录优先的规则进行应用。<Directory />的默认访问权限为"Allow from All",这意味着Apache没有进行访问控制,通过设置Order,Deny,Allow,AllowOverride这个几个参数可以对访问进行控制。
l ServerAdmin
服务器返回给客户端的错误信息中所包含的管理员邮件地址。
【说明】
该参数是在所有返回给客户端的错误信息中给出管理员的邮件地址。但也可以是一个URL地址,如果httpd不能将该参数的值识别为URL,它就会假定它是一个email-address ,并在超连接中用在mailto后面。这里推荐配置一个Email地址,如果配置的是URL一定要保证指向一个受控制的服务器,否则用户将无法确保和管理员取得联系。
使用多个Listen参数可以指定多个不同的监听端口和/或地址端口组合。
例如,想要服务器接受80和8080端口上的请求,可以这样设置:
Listen 80
Listen 8080
为了让服务器在两个确定的地址端口组合上接受请求,可以这样设置:
APACHE配置文件中文详解
# 包括:"*", IP地址, 或域名.
# 参见 <VirtualHost> 和 Listen directives.
#
BindAddress 166.111.178.144
#
# Apache模块编译成标准的Windows结构。
#
# 以下模块绑定到标准的Apache二进制windows分布。
#
# 配置和日志文件名:指定服务器控制文件命名时,
# 以 "/" (或 "drive:/" for Win32)开始,服务器将使用这些绝对路径。
# 如果文件名不是以"/"开始的,预先考虑服务器根目录--
# 因此 "logs/foo.log",如果服务器根目录是"/usr/local/apache",
# 如果超过这个请求数,子程序会自动退出,避免延期使用导致内存溢出或其他问题。
# 大部分系统,并不需要此设置,
# 但是部分,象Solaris,确实值得注意。
# 对Win32, 可设置为0 (无限制)
# 除非有另外的考虑。
#
# 注: 此值不包括在每个连接初始化请求后,"keptalive"请求
#LoadModule status_module modules/ApacheModuleStatus.dll
#LoadModule usertrack_module modules/ApacheModuleUserTrack.dll
#
# ExtendedStatus 在服务器状态句柄被呼叫时控制是产生"完整"的状态信息(ExtendedStatus On)
Apache2配置参数详细说明
StartThreads 250
MinSpareThreads 25
MaxSpareThreads 250
MaxThreads 1000
MaxRequestPerChild 0
</IfModule>
# OS/2 MPM
# StartServers:启动的服务进程数量
# ThreadsPerChild:每个服务进程中的工作线程常数
# MaxRequestsPerChild:服务进程中允许的最大请求数目
<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
<IfModule>
<IfModule>
#
#PidFile:记录服务器启动进程号的文件。
#
<IfModule !mpm_neware.c>
PidFile logs/httpd.pid
</IfModule>
#
#Timeout:接收和发送前超时秒数
#
Timeout 300
#
#KeepAlive:是否允许稳固的连接(每个连接有多个请求),
#
KeepAliveTimeout 15
##
##Server-Pool大小设定(针对MPM的)
##
# prefork MPM
# StartServers:启动时服务器启动的进程数
# MinSpareServers:保有的备用进程的最小数目
Apache配置详解
Apache配置详解Apache的配置由httpd.conf文件配置,因此下面的配置指令都是在httpd.conf文件中修改。
主站点的配置(基本配置)(1) 基本配置:ServerRoot "/mnt/software/apache2" #你的apache软件安装的位置。
其它指定的目录如果没有指定绝对路径,则目录是相对于该目录。
PidFile logs/httpd.pid #第一个httpd进程(所有其他进程的父进程)的进程号文件位置。
Listen 80 #服务器监听的端口号。
ServerName :80 #主站点名称(网站的主机名)。
ServerAdmin admin@ #管理员的邮件地址。
DocumentRoot "/mnt/web/clusting" #主站点的网页存储位置。
以下是对主站点的目录进行访问控制:<Directory "/mnt/web/clusting">Options FollowSymLinksAllowOverride NoneOrder allow,denyAllow from all</Directory>在上面这段目录属性配置中,主要有下面的选项:Options:配置在特定目录使用哪些特性,常用的值和基本含义如下:ExecCGI: 在该目录下允许执行CGI脚本。
FollowSymLinks: 在该目录下允许文件系统使用符号连接。
Indexes: 当用户访问该目录时,如果用户找不到DirectoryIndex指定的主页文件(例如index.html),则返回该目录下的文件列表给用户。
SymLinksIfOwnerMatch: 当使用符号连接时,只有当符号连接的文件拥有者与实际文件的拥有者相同时才可以访问。
其它可用值和含义请参阅:/Apache/ApacheManual/mod/core.html#options AllowOverride:允许存在于.htaccess文件中的指令类型(.htaccess文件名是可以改变的,其文件名由AccessFileName指令决定):None: 当AllowOverride被设置为None时。
Apache2.2配置文件中文版
#Listen 12.34.56.78:80
Listen 80
#
# 动态共享对象的支持
#
#对于被创建为DSO的模块,在使用其功能前必须添加一条LoadModule语句。例如:
#LoadModule userdir_module modules/mod_userdir.so
#LoadModule authn_alias_module modules/mod_authn_alias.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
# LoadModule foo_module modules/mod_foo.so
静态编译的文件(列于httpd -l)则不需要这样。
LoadModule python_module modules/mod_python.so
LoadModule actions_module modules/mod_actions.so
#不要简单的阅读此处的说明而不去理解
# what they do. They're here only as hints or reminders. If you are unsure
#它们的行为。此处它们仅仅作为一个提示。若你有疑问
# consult the online docs. You have been warned.
Apache主配置文件httpd.conf详解
Apache主配置⽂件httpd.conf详解Apache的主配置⽂件:/etc/httpd/conf/httpd.conf默认站点主⽬录:/var/www/html/Apache服务器的配置信息全部存储在主配置⽂件/etc/httpd/conf/httpd.conf中,这个⽂件中的内容⾮常多,⽤wc命令统计⼀共有1009⾏,其中⼤部分是以#开头的注释⾏。
[root@justin ~]# wc -l /etc/httpd/conf/httpd.conf1009 /etc/httpd/conf/httpd.conf[root@justin ~]#配置⽂件包括三部分:[root@justin ~]# grep '\<Section\>' /etc/httpd/conf/httpd.conf -n33:### Section 1: Global Environment245:### Section 2: 'Main' server configuration973:### Section 3: Virtual Hosts[root@justin ~]#1)Global Environment---全局环境配置,决定Apache服务器的全局参数2)Main server configuration---主服务配置,相当于是Apache中的默认Web站点,如果我们的服务器中只有⼀个站点,那么就只需在这⾥配置就可以了。
3)Virtual Hosts---虚拟主机,虚拟主机不能与Main Server主服务器共存,当启⽤了虚拟主机之后,Main Server就不能使⽤了--------------------------------------------------------------------------------1)Global Environment44 ServerTokens OS在出现错误页的时候是否显⽰服务器操作系统的名称,ServerTokens Prod为不显⽰57 ServerRoot "/etc/httpd"⽤于指定Apache的运⾏⽬录,服务启动之后⾃动将⽬录改变为当前⽬录,在后⾯使⽤到的所有相对路径都是想对这个⽬录下65 PidFile run/httpd.pid记录httpd守护进程的pid号码,这是系统识别⼀个进程的⽅法,系统中httpd进程可以有多个,但这个PID对应的进程是其他的⽗进程70 Timeout 60服务器与客户端断开的时间76 KeepAlive Off是否持续连接(因为每次连接都得三次握⼿,如果是访问量不⼤,建议打开此项,如果⽹站访问量⽐较⼤关闭此项⽐较好),修改为:KeepAlive On 表⽰允许程序性联机83 MaxKeepAliveRequests 100表⽰⼀个连接的最⼤请求数89 KeepAliveTimeout 15断开连接前的时间102 <IfModule prefork.c>103 StartServers 8104 MinSpareServers 5105 MaxSpareServers 20106 ServerLimit 256107 MaxClients 256108 MaxRequestsPerChild 4000109 </IfModule>系统默认的模块,表⽰为每个访问启动⼀个进程(即当有多个连接公⽤⼀个进程的时候,在同⼀时刻只能有⼀个获得服务)。
第14讲 Apache服务器配置
# /usr/local/apache2/bin/htpasswd -c /share/soft/.htpasswd sam
更改已设定的密码 # /usr/local/apache2/bin/htpasswd -m /share/soft/.htpasswd sam 第四步:重启服务,测试 通过浏览器输入http://服务器IP 或域名/soft
站点登录控制
第二步:在/share/soft目录下建立.htaccess 文件: AuthName “The LAMPBrother’s Docs” AuthType Basic AuthUserFile /share/soft/.htpasswd require valid-user
站点登录控制
站点登录控制
第一步:在Apache 配置文件 /usr/local/apache2/etc/httpd.conf中添加: Alias /soft “/share/soft” <Directory “/share/soft”> Options Indexes FollowSymLinks AllowOverride AuthConfig Order allow,deny Allow from all </Directory>
虚拟主机
修改Apache配置文件 /usr/local/apache2/etc/httpd.conf,设置行: etc/httpd/extra/httpd-vhosts.conf 取消注释,使其生效 解析虚拟机所需域名,可通过/etc/hosts设置。 编辑 /usr/local/apache2/etc/httpd/extra/httpdvhosts.conf NameVirtualHost 192.168.90.250
Apache的配置文件
Apache的配置文件✓出处:站长百科✓原文地址:/wiki/Apache的配置文件✓本电子书整理自站长百科Apache的配置文件词条,查看内容请访问网站。
目录Apache的配置文件 (1)主配置文件 (2)配置文件的语法 (2).htaccess 文件 (2)配置段(容器)的类型 (3)配置段的合并 (4)更多电子书 (7)HostEase拥有中文网站()的美国主机商中国访问最快的美国主机中文网站轻松选购支付宝付款购买快捷中文客户服务沟通更方便,轻松省钱请看优惠码/top/hostease/推荐内容:关键词密度检测工具| 反向链接查询工具主配置文件Apache的配置文件是包含若干指令的纯文本文件。
主配置文件通常叫httpd.conf ,其位置是编译时确定的,但可以用命令行参数 -f 来改变。
另外,还可以用Include指令和通配符附加许多其他配置文件。
任何配置文件都可以使用任何指令。
只有在启动或重新启动Apache后,主配置文件的更改才会生效。
服务器还会读取一个包含MIME文件类型的文件,其文件名由TypesConfig指令确定,默认值是mime.types 。
配置文件的语法Apache配置文件的每一行包含一个指令,在行尾使用反斜杠"\"可以表示续行,但是反斜杠与下一行之间不能有任何其他字符(包括空白字符)。
配置文件中的指令是不区分大小写的,但是指令的参数(argument)通常是大小写敏感的。
以"#"开头的行被视为注解并被忽略。
注解不能出现在指令的后边。
空白行和指令前的空白字符将被忽略,因此可以采用缩进以保持配置层次的清晰。
可以用 apachectl configtest 或者命令行选项 -t 检查配置文件中的错误,而无须启动Apache服务器。
.htaccess 文件Apache可以使用分布在整个网站文件目录树结构中的特殊文件来进行分散配置,这些特殊的文件通常叫.htaccess ,但是也可以用AccessFileName指令来改变它的名字。
Apache安装配置详细解读
Apache 的安装无外乎两种方式:源代码安装和二进制包安装。
这两种安装类型各有特色,二进制包安装不需要编译,而源代码安装则需要先配置编译再安装,二进制包安装在一个固定的位置下,选择固定的模块,而源代码安装则可以让你选择安装路径,选择你想要的模块。
本文主要介绍二进制DEB包安装方式。
系统:GNU/Linux Debian/etchApache当前版本: 2.4.21、安装:使用以下命令安装:tony@tonybox:~$sudo aptitude update aptitude install apache2 apache2-utils其中apache2-utils提供了我们在配置维护过程中非常有用的一些工具安装完成后,可以使用下面的命令启动Apache 服务:tony@tonybox:~$ sudo /etc/init.d/apache2 start停止Apache服务则是:tony@tonybox:~$ sudo /etc/init.d/apache2 stop也可以直接用kill 命令强制杀死apache2进程tony@tonybox:~$ sudokillall apache2如有需要,可以通过rcconf来控制是否在系统启动是加载Apache 服务启动完成后打开浏览器,使用URL http://localhost/ 来访问已经启动的Apache服务器,服务器将会跳转到http://localhost/apache2-default/, 向浏览器返回一个Apache安装成功的页面。
注:这取决于/etc/apache2/sites-available/default 配置文件中,是否取消了RedirectMatch ^/$ /apache2-default/行的注释2、配置文件说明在Debian下,安装完成后,软件包为我们提供的配置文件位于/etc/apache2目录下:tony@tonybox:/etc/apache2$ ls -ltotal 72-rw-r--r-- 1 root root 12482 2006-01-16 18:15 apache2.confdrwxr-xr-x 2 root root 4096 2006-06-30 13:56 conf.d -rw-r--r-- 1 root root 748 2006-01-16 18:05 envvars -rw-r--r-- 1 root root 268 2006-06-30 13:56httpd.conf-rw-r--r-- 1 root root 12441 2006-01-16 18:15 magic drwxr-xr-x 2 root root 4096 2006-06-30 13:56mods-availabledrwxr-xr-x 2 root root 4096 2006-06-30 13:56mods-enabled-rw-r--r-- 1 root root 10 2006-06-30 13:56 ports.conf -rw-r--r-- 1 root root 2266 2006-01-16 18:15 READMEdrwxr-xr-x 2 root root 4096 2006-06-30 13:56sites-availabledrwxr-xr-x 2 root root 4096 2006-06-30 13:56sites-enableddrwxr-xr-x 2 root root 4096 2006-01-16 18:15 ssl其中apache2.conf为apache2服务器的主配置文件,查看此配置文件,你会发现以下内容# Include module configuration:Include /etc/apache2/mods-enabled/*.loadInclude /etc/apache2/mods-enabled/*.conf# Include all the user configurations:Include /etc/apache2/httpd.conf# Include ports listingInclude /etc/apache2/ports.conf# Include generic snippets of statementsInclude /etc/apache2/conf.d/[^.#]*有此可见,apache2 根据配置功能的不同,对配置文件进行了分割,这样更利于管理conf.d下为配置文件的附加片断,默认情况下,仅提供了charset 片断,tony@tonybox:/etc/apache2/conf.d$ cat charsetAddDefaultCharset UTF-8如有需要我们可以将默认编码修改为GB2312, 即文件的内容为:AddDefaultCharset GB2312httpd.conf是个空文件magic文件中包含的是有关mod_mime_magic模块的数据,一般不需要修改它。
Apache服务器配置
载入模块指令
Apache服务器采用动态共享对象(DSO,Dynamic Shared Object)的机制,在启动Apache服务器时可根据实际需要载 入适当的模块,使其具有相应的功能。 载入模块的相关指令有: LoadModule ClearModuleList AddModule
LoadModule
建立系统用户的个人主页
1. 修改httpd.conf,启用个人主页功能 UserDir public_html [root@www ~]# vi /usr/local/apache2/conf/httpd.conf …… 确认目录区域设置 #UserDir disable 2. 建立个人主页测试网页 …… ~/public_html/index.html UserDir public_html <Directory "/home/*/public_html"> /home/jerry/ 添加权限:chmod o+x AllowOverride none 3. 重新启动httpd服务 Options none /usr/local/apache2/bin/apachectl restart Order allow,deny Allow from 4. 访问测试 all </Directory> /~user
httpd服务的日志
两类日志文件 访问日志:/usr/local/apache2/logs/access_log 错误日志:/usr/local/apache2/logs/error_log httpd.conf中对日志的设置
[root@localhost ~]# vi /usr/local/apache2/conf/httpd.conf …… ErrorLog logs/error_log CustomLog logs/access_log common ……
apache 中文详解
由于Apache对一个目录的访问控制设置是能够被下一级目录继承的,因此对根目录的设置将影响到它的下级目录。注意由于AllowOverride None的设置,使得Apache服务器不需要查看根目录下的访问控制文件,也不需要查看以下各级目录下的访问控制文件,直至httpd.conf(或access.conf )中为某个目录指定了允许Alloworride,即允许查看访问控制文件。由于Apache对目录访问控制是采用的继承方式,如果从根目录就允许查看访问控制文件,那么Apache就必须一级一级的查看访问控制文件,对系统性能会造成影响。而缺省关闭了根目录的这个特性,就使得Apache从httpd.conf中具体指定的目录向下搜寻,减少了搜寻的级数,增加了系统性能。因此对于系统根目录设置AllowOverride None不但对于系统安全有帮助,也有益于系统性能。
<Directory “H:/web001“>
Directory语句就是用来定义目录的访问限制的,这里可以看出它的标准语法,为一个目录定义访问限制。上例的这个设置是针对系统的根目录进行的,设置了允许符号连接的选项FollowSymLinks ,以及使用AllowOverride None表示不允许这个目录下的访问控制文件来改变这里进行的配置,这也意味着不用查看这个目录下的相应访问控制文件。
All 缺省值,使访问控制文件可以覆盖系统配置
None 服务器忽略访问控制文件的设置
ServerName localhost
缺省情况下,并不需要指定这个ServerName参数,服务器将自动通过名字解析过程来获得自己的名字,但如果服务器的名字解析有问题(通常为反向解析不正确),或者没有正式的DNS名字,也可以在这里指定I P地址。当ServerName设置不正确的时候,服务器不能正常启动。
Apache服务器配置与管理
Apache服务器配置与管理一、Apache服务器的安装与启动1、查询系统是否安装了Apacherpm -qa | grep httpd2、运行如下命令进行安装rpm -ivh /media/RH*/Server/httpd-2.2.3-11.e15_1.3.i386.rpm3、启动Apache服务器service httpd restart 或者etc/init.d/httpd restart4、检测配置文件的语法service httpd configtest5、测试Apache服务器注意:防火墙的配置二、Apache服务器默认的配置文件信息1、主配置文件:/etc/httpd/conf/httpd.conf2、服务器的根目录(ServerRoot):/etc/httpd3、根文档目录(DocumentRoot):/var/www/html4、访问日志文件:/etc/httpd/logs/access_log5、错误日志文件:/etc/httpd/logs/error_log6、模块存放路径:/etc/httpd/modules(一)httpd.conf文件的格式1、httpd.conf配置文件主要由全局环境、主服务器配置和虚拟主机3个部分组成2、配置语句的语法格式:配置参数名称参数值3、检查httpd.conf的语法是否正确apachectl configtest 或者service httpd configtest(二)Web服务的基本配置1、主目录的路径(DocumentRoot)默认位置:/var/www/html可以将需要发布的网页放在这个目录下2、默认文档在浏览器中,输入Web站点的IP地址或域名即显示出来的Web页面DirectoryIndex index.html index.htm index.php index.html.var3、配置Apache监听的IP地址和端口号Listen 80(在本机所有可用IP地址上监听TCP 80端口)只监听IP地址为192.168.16.177的80端口和192.168.18.178的8080端口Listen 192.168.16.177 80Listen 192.168.18.178 80804、设置相对根目录路径相对根目录通常是Apache存放配置文件、日志文件、模块文件等的地方。
Apache服务器配置文件
• 全局环境配置 • 主服务器配置 • 虚拟主机配置
配置指令的作用域
• 配置指令作用范围可以是全局或只能在容器 • server config、virtual host、directory、 .htaccess
查看指令的 作用域
• Apache 手册中指令的作用域(Context)项 • # httpd -L 或 apachectl -L
配置文件的基本语法
3
每一行包含一个指令,在行尾使用反斜杠”\”可以表示续行
配置文件中的指令不区分大小写,但是指令的参数 (argument) 通 常区分大小写
以 ”#” 开头的行被视为注解并在读取时被忽略。注解不能出现在 指令的后边
空白行和指令前的空白字符将在读取时被忽略,因此可以采用缩进 以保持配置层次的清晰
• # httpd -L 或 apachectl -L
Apache的服务器配置文件标识指令
8
ServerName
• 服务器用于辨识自己的主机名和端口号
ServerAdmin
• 服务器返回给客户端的错误信息中包含的管理员邮件地址
ServerSignature
• 配置服务器生成页面的页脚的信息
ServerTokens
DocumentRoot
组成网络上可见的主文档树的根目录
ErrorLog
存放错误日志的位置
CustomLog
访问日志文件的位置
LockFile
Apache 使用的锁文件的位置
PidFile
设置服务器用于记录父进程(监控进程) PID 的文件
Apache Profork MPM 的相关指令
10
StartServers:启动时服务器启动的进程数
apache配置directory
apache配置<Directory> 指令说明封装一组指令,使之仅对文件空间中的某个目录及其子目录生效语法<Directory directory-path> ... </Directory>作用域server config, virtual host状态核心(C)模块core<Directory>和</Directory>用于封装一组指令,使之仅对某个目录及其子目录生效。
任何可以在"directory"作用域中使用的指令都可以使用。
Directory-path可以是一个目录的完整路径,或是包含了Unix shell匹配语法的通配符字符串。
在通配符字符串中,"?"匹配任何单个的字符,"*"匹配任何字符序列。
您也可以使用"[]"来确定字符范围。
以上通配符都不能匹配"/"字符。
所以<Directory /*/public_html>将无法匹配/home/user/public_html ,但<Directory /home/*/public_html>能够正确匹配。
比如说:<Directory /usr/local/httpd/htdocs>Options Indexes FollowSymLinks</Directory>使用directory-path参数的时候要注意:它们必须与Apache用于访问文件的文件系统路径保持一致。
赋予特定<Directory>的指令将无法对通过不同路径指向的同一个目录文件生效,比如说通过另外一个符号连接生成的路径。
扩展的正则表达式也可以通过附加一个"~"字符来使用。
比如说:<Directory ~ "^/www/(.+/)*[0-9]{3}">将匹配/www/下所有由3个数字组成的目录。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
## This is the main Apache HTTP server configuration file. It contains the# configuration directives that give the server its instructions.# See <URL:/docs/2.2/> for detailed information.# In particular, see# <URL:/docs/2.2/mod/directives.html># for a discussion of each configuration directive.## 这是Apache server的主配置文件. 它包含配置指令,来指示服务器。
# 参考 /docs/2.2/mod/directives.html 了解关于指令的详细信息。
# 另外,参看 /docs/2.2/mod/directives.html 获取每个配置指令的讨论。
# Do NOT simply read the instructions in here without understanding# what they do. They're here only as hints or reminders. If you are unsure# consult the online docs. You have been warned.## 不要仅仅是阅读本指令,而应该理解指令做了什么。
在这里仅起提示的作用。
# 如果你不清楚请参阅在线文档。
特别提示。
# The configuration directives are grouped into three basic sections:# 配置文件批令分为三个基本组:## 1. Directives that control the operation of the Apache server process as a # whole (the 'global environment').# 1.控制Apache server的全局操作的指令(全局环境变量)。
## 2. Directives that define the parameters of the 'main' or 'default' server, # which responds to requests that aren't handled by a virtual host.# These directives also provide default values for the settings# of all virtual hosts.# 2. 配置主服务或者默认服务的指令,它针对那些被虚拟主机以外的请求作出响应。
# 它也包含虚拟主机的一些默认参数。
## 3. Settings for virtual hosts, which allow Web requests to be sent to# different IP addresses or hostnames and have them handled by the# same Apache server process.# 3. 虚拟主机设置,这使得发往不同的ip或者主机名的请求可以被子同一个Apache服务器处理。
# Configuration and logfile names: If the filenames you specify for many# of the server's control files begin with "/" (or "drive:/" for Win32), the # server will use that explicit path. If the filenames do *not* begin# with "/", the value of ServerRoot is prepended -- so "logs/foo.log"# with ServerRoot set to "E:/usr/Apache2.2" will be interpreted by the# server as "E:/usr/Apache2.2/logs/foo.log".## 配置和日志文件名:如果你所指定的文件名以“/”(在Win32中以“盘符:/”)开头,# 服务器将以绝对路径来处理。
如果文件名不以“/”开头,则以相对路径处理,# 相对于服务器根(Serverroot)。
因此“logs/foo.log”,如果服务器根目录# 为“E:/usr/Apache2.2”,则服务器解释为“E:/usr/Apache2.2/logs/foo.log”。
## NOTE: Where filenames are specified, you must use forward slashes# instead of backslashes (e.g., "c:/apache" instead of "c:\apache").# 注意:在文件名的定义中,必须用正斜杠,而不是反斜杠。
(比如,“c:/apache”,而不是“c:\apache”)## If a drive letter is omitted, the drive on which Apache.exe is located# will be used by default. It is recommended that you always supply# an explicit drive letter in absolute paths, however, to avoid# confusion.# 如果省略了盘符,则以Apache.exe所在的盘符为默认值。
建议在绝对路径中明确# 指定盘符,以避免混乱。
# ThreadsPerChild: constant number of worker threads in the server process# MaxRequestsPerChild: maximum number of requests a server process serves# ThreadsPerChild:每个服务进程中的工作线程常数# MaxRequestsPerChild:服务进程中允许的最大请求数目ThreadsPerChild 250MaxRequestsPerChild 0## ServerRoot: The top of the directory tree under which the server's# configuration, error, and log files are kept.# 指出服务器保存其配置、出错和日志文件等的根目录## Do not add a slash at the end of the directory path. If you point# ServerRoot at a non-local disk, be sure to point the LockFile directive# at a local disk. If you wish to share the same ServerRoot for multiple# httpd daemons, you will need to change at least LockFile and PidFile.## 不要在目录的末尾加上斜杠。
如果你想将ServerRoot指向非本地硬盘上,请添加卷到本地硬盘上。
# 如果你想共享 ServerRoot 给多个HTTPD镜像服务,你必须改变LockFile和PidFile。
#ServerRoot "E:/usr/Apache2.2"## Listen: Allows you to bind Apache to specific IP addresses and/or# ports, instead of the default. See also the <VirtualHost># directive.# Listen:允许你绑定Apache服务到指定的IP地址和端口上,以取代默认值。
请同时参考<VirtualHost># 指令。
## Change this to Listen on specific IP addresses as shown below to# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)# 像下面那样使Apache只在指定的IP地址上监听,以防止它在IP地址0.0.0.0上监听。
##Listen 12.34.56.78:80Listen 8080## Dynamic Shared Object (DSO) Support# 动态共享对象(DSO)支持## To be able to use the functionality of a module which was built as a DSO you # have to place corresponding `LoadModule' lines at this location so the# directives contained in it are actually available _before_ they are used.# Statically compiled modules (those listed by `httpd -l') do not need# to be loaded here.# 为了能够使用那些以DSO模式编译的模块中的函数,你必须放置相应的“LoadModule”行在这里,以便# 包含在其后的指令在使用之前激活。
# 那些静态编译的模块(即以“httpd -l”列出的模块)则不需要在这里加载。
## Example:# LoadModule foo_module modules/mod_foo.so#LoadModule actions_module modules/mod_actions.soLoadModule alias_module modules/mod_alias.soLoadModule asis_module modules/mod_asis.soLoadModule auth_basic_module modules/mod_auth_basic.so#LoadModule auth_digest_module modules/mod_auth_digest.so#LoadModule authn_anon_module modules/mod_authn_anon.so#LoadModule authn_dbm_module modules/mod_authn_dbm.so LoadModule authn_default_module modules/mod_authn_default.so LoadModule authn_file_module modules/mod_authn_file.so#LoadModule authz_dbm_module modules/mod_authz_dbm.so LoadModule authz_default_module modules/mod_authz_default.so LoadModule authz_groupfile_module modules/mod_authz_groupfile.so LoadModule authz_host_module modules/mod_authz_host.so LoadModule authz_user_module modules/mod_authz_user.so LoadModule autoindex_module modules/mod_autoindex.so#LoadModule cern_meta_module modules/mod_cern_meta.so LoadModule cgi_module modules/mod_cgi.so#LoadModule dav_module modules/mod_dav.so#LoadModule dav_fs_module modules/mod_dav_fs.so#LoadModule deflate_module modules/mod_deflate.soLoadModule dir_module modules/mod_dir.soLoadModule env_module modules/mod_env.so#LoadModule expires_module modules/mod_expires.so#LoadModule file_cache_module modules/mod_file_cache.so#LoadModule headers_module modules/mod_headers.soLoadModule imagemap_module modules/mod_imagemap.soLoadModule include_module modules/mod_include.so#LoadModule info_module modules/mod_info.soLoadModule isapi_module modules/mod_isapi.soLoadModule log_config_module modules/mod_log_config.so LoadModule mime_module modules/mod_mime.so#LoadModule mime_magic_module modules/mod_mime_magic.so#LoadModule proxy_module modules/mod_proxy.so#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so #LoadModule proxy_connect_module modules/mod_proxy_connect.so#LoadModule proxy_http_module modules/mod_proxy_http.so#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so LoadModule negotiation_module modules/mod_negotiation.so#LoadModule rewrite_module modules/mod_rewrite.soLoadModule setenvif_module modules/mod_setenvif.so#LoadModule speling_module modules/mod_speling.so#LoadModule status_module modules/mod_status.so#LoadModule unique_id_module modules/mod_unique_id.so LoadModule userdir_module modules/mod_userdir.so#LoadModule usertrack_module modules/mod_usertrack.so#LoadModule vhost_alias_module modules/mod_vhost_alias.so#LoadModule ssl_module modules/mod_ssl.soLoadModule php5_module "E:/usr/php/php5apache2_2.dll"# 配置 php.ini 的路径PHPIniDir "E:/usr/php"# 'Main' server configuration# 主服务配置## The directives in this section set up the values used by the 'main'# server, which responds to any requests that aren't handled by a# <VirtualHost> definition. These values also provide defaults for# any <VirtualHost> containers you may define later in the file.## 本节中指令的设置值,将被主服务所使用,主服务响应那些没有被<VirtualHost>所处理的请求,# 这些值也为<VirtualHost>容器提供了默认值,你可以在后面的文件中定义## All of these directives may appear inside <VirtualHost> containers,# in which case these default settings will be overridden for the# virtual host being defined.## 所有这些指令将出现在<VirtualHost>容器中,这些设定值将在定义virtual host时被覆写。