httpd.conf文件格式解析
apache http server,俗称apache,程序名httpd,默认配置文件/etc/httpd/conf/httpd.conf;该文件通过其中的Include conf.d/*.conf指示包含/etc/httpd/conf.d目录下的所有.conf文件。
逐项解析就没必要了,httpd.conf中对各项配置的作用说明已经是比较清楚的了,或者直接看逼逼怪鸟哥的解释,只说自己以前感到不解的几个问题。
1.httpd.conf添加配置时一定要找到指定的位置添加才能生效吗?
答:修改某项配置原已有配置现要修改,那要找到其位置;但如是是添加新配置那不需要到特定位置,只要不在其他标签内部(<Directory></Directory>)皆可。
按httpd.conf自己的划分其配置分全局环境变量(Global Environment)、主服务器配置('Main' server configuration)、虚拟主机(Virtual Hosts)三大节区
但就实际配置来看,配置是作用于全局还是主服务器还是虚拟机,并不取决于其位置,而只是取决于属性名。
比如ServerTokens这一全局属性,不管你把他移到httpd.conf中的主服务节区,或者虚拟机节区,甚至是conf.d目录下的任意.conf文件,其都是作用于全局(当然不能将其置于其他标签内部,那样是非法配置了)。
所以最常见的配置php支持时,总说“找到LoadModule xxx处在其后边添加LoadModule php5_module modules/libphp5.so”,事实是你随便找个位置加上去一样生效的(比如文件尾,当然还一样不能在其他标签内部)。
2.httpd.conf中的目录为什么总没头没脑的,比如“Include conf.d/*.conf”这项,目录全路径是什么?
答:想明白httpd.conf中的目录,要搞清ServerRoot、DocumentRoot、Alias三项。
ServerRoot--httpd进程默认所处的目录,明白些就是其他Include等目录配置项的前辍。“Include conf.d/*.conf”全路径就是$ServerRoot/conf.d/*.conf(默认/etc/httpd/conf.d/*.conf)。
DocumentRoot--网站根目录,浏览器仅以http://ip:port访问时访问的目录。
Alias--别名功能,可将任意物理路径映射为DocumentRoot下的目录。比如Alias /error/ "/var/www/error/",就是物理路径/var/www/error/被映射为了$DocumentRoot/error,当访问http://ip:port/error时就是访问/var/www/error/目录。
3.apache如何修改网站根目录?
答:如2中所述网站根目录由DocumentRoot指定。
但是由于apache需要对目录权限进行配置,所以在修改根目录后要增加对新根目录的权限限制,一般的做法是直接将<Directory "/var/www/html"><Directory />标签中的默认路径"/var/www/html"改为新的根目录。
各<Directory><Directory />标签就是用来配置各相关目录的访问权限的。
4.apache如何使用php?
答:apache以模块方式将php引入,做为apache的一部份。
php与http服务器的结合,一般有cgi、fastcgi和模块三种形式;fastcgi是cgi的进程重用改进版。nginx使用php一般用fastcgi模式,apache使用php一般使用模块模式(当然其实fastcgi模式也是支持的)。
模块方式就类似动态链接库模式,动态链接库有一个dll文件,LoadModule php5_module modules/libphp5.so”就是加载$ServerRoot/modules/libphp5.so文件。
升级apache的php要使用--with-apxs2编译出新的libphp5.so文件然后复制到$ServerRoot/modules/目录将旧的替换。
5.<IfModule prefork.c></IfModule>等标签的作用是什么?
答:LoadModule加载的是动态加载库,prefork.c等是静态编译到httpd的功能模块。<IfModule>就是如果httpd中有静态编入了该模块,则对该模块使用以下限制。
可以使用httpd -l查看httpd静态编入了哪些模块。另外可以使用ldd /usr/sbin/httpd查看httpd运行依赖哪些动态库(注意不是LoadModule那些,httpd运行不用LoadModule那些也可以运行的,那些只是为了扩展httpd的功能才加进来的)。
httpd.conf文件格式解析的更多相关文章
- httpd.conf配置解析php
PHPIniDir "D:/php-5.3.5" LoadModule php5_module "D:/php-5.3.5/php5apache2_2.dll" ...
- 防恶意解析,禁止用IP访问网站的Apache设置 修改 httpd.conf 实现
一般来说,网站可以用域名和IP来访问.你的网站可以通过IP直接访问,本来这没什么问题,但是会有些隐患: 由于搜索引擎也会收录你的IP地址的页面,所以同一个页面搜索引擎会重复收录,造成页面的权重不如单个 ...
- Apache2 httpd.conf 配置详解
Apache2 httpd.conf 配置详解 <第一部分> 常用配置指令说明 1. ServerRoot:服务器的基础目录,一般来说它将包含conf/和logs/子目录,其它配置文件的相 ...
- Apache 的 httpd.conf 注释
ServerRoot “/usr/local“ ServerRoot用于指定守护进程httpd的运行目录,httpd在启动之后将自动将进程的当前目录改变为这个目录,因此如果设置文件中指定的文件或目录是 ...
- Apache httpd.conf配置文件 2(Main server configuration)
### Section 2: 'Main' server configuration # # The directives in this section set up the values used ...
- Apache主配置文件httpd.conf 详解
Apache的主配置文件:/etc/httpd/conf/httpd.conf 默认站点主目录:/var/www/html/ Apache服务器的配置信息全部存储在主配置文件/etc/httpd/co ...
- Apache 的 httpd.conf 详解
ServerRoot “/usr/local“ ServerRoot用于指定守护进程httpd的运行目录,httpd在启动之后将自动将进程的当前目录改变为这个目录,因此如果设置文件中指定的文件或目录是 ...
- wamp中的httpd.conf文件设置
ServerName localhost 缺省情况下,并不需要指定这个ServerName参数,服务器将自动通过名字解析过程来获得自己的名字,但如果服务器的名字解析有问题(通常为反向解析不正确),或者 ...
- httpd配置文件httpd.conf规则说明和一些基本指令
apache httpd系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 本文主要介绍的是httpd的配置文件,包括一些最基本的指令.配置规 ...
随机推荐
- [从零开始搭网站四]CentOS配置Tomcat
点击下面连接查看从零开始搭网站全系列 从零开始搭网站 上一章带大家配置了JDK,那么现在就要来配置Tomcat容器了. 1:去 http://tomcat.apache.org/download-90 ...
- Java LocalDateTime,DateTimeFomatter----JDK8新时间类的简单使用
JDK8中增加了一系列时间的类, (据说)是为了干掉过去的Date,Calendar类的, 过去的Date类(据说)有着线程不安全等诸多弊端, 至于我的个人感受就是用起来实在是很麻烦,我一般封装成几个 ...
- 真刀实战地搭建React+Webpack+Express搭建一个简易聊天室
一.前面bb两句 因为自惭(自残)webpack配置还不够熟悉,想折腾着做一个小实例熟悉.想着七夕快到了,做一个聊天室自己和自己聊天吧哈哈.好了,可以停止bb了,说一下干货. 二. 这个项目能学到啥? ...
- FreeCodeCamp---advanced Algorithm Scripting解法
Exact Change 设计一个收银程序 checkCashRegister() ,其把购买价格(price)作为第一个参数 , 付款金额 (cash)作为第二个参数, 和收银机中零钱 (cid) ...
- 四: scrapy爬虫框架
5.爬虫系列之scrapy框架 一 scrapy框架简介 1 介绍 (1) 什么是Scrapy? Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍.所谓的框架 ...
- IIS上部署MVC网站,打开后ExtensionlessUrlHandler-4.0
IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0解决方法IIS上部署MVC网站,打开后500错误 IS上部署MVC网站,打开后Extensio ...
- 哈密顿绕行世界问题 HDU 2181
题意让你先输20行数表示20个城市及所相邻的三个城市(行数就是该城市),然后给你一个数,从这个(给的数就表示城市)城市出发走遍所有城市一次回到出发的城市:看着复杂,仔细想想是个不算太难的深搜题,主要你 ...
- Android 错误集合
1. Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 erro ...
- 学习笔记18—circos应用集
一.在线画图(行列分别最大为75) 相信大家都听说过circos图,但是亲自画过的人可能就很少,这主要因为软件的安装和使用稍微有一点麻烦.其实,circos图也是可以在线绘制的,这样就简单多了!一起来 ...
- keys(),values()和items()
a={'a':11,'b':'bb','c':321}for x in a.items(): print(x) # 每条都输出来print("------------")for ...