Apache2配置目录分析(详细版)

ls  -al用来查看软件的软链接信息。出现->的都是进行了软链接,后面才是真正的目录。

我们来看apache2服务器的标准启动命令:

 /etc/init.d/apache2 start

其他命令如service apache2 start都是间接调用了上面的命令,找到脚本apache2然后执行而已。

/etc/init.d这个目录是所有服务(如何web服务、ftp服务、mysql...)的脚本,通过在执行脚本时加上参数,可以开启、关闭或者重启对应的服务。上面就是执行init.d文件及下的apache2脚本来启动apche2服务器,其他服务器都是类似原理。

下面就是脚本文件的内容,开头#!/bin/sh就是表明了这个脚本文件是用Shell--sh来执行的,其他的就不看了。

我们输入/etc/init.d/apache2 start时候,系统就会执行apache2脚本文件,然后会转去调用配置文件apache2.conf。

这个文件就是apache2服务器的配置文件,它在 /etc/apache2目录下。

 

我们来看看这个配置都写了啥:

 

上面将/etc/apache2目录大致情况列举了出来。大致意思就是里面有配置

1、apaceh2.conf、

2、端口配置文件port.conf、

3、mods-enable文件夹,这个文件夹下都是*.load和*.conf后缀的文件。

4、site-enable文件夹,这个文件夹下都是*.conf后缀的文件。

其实还有其他的文件,它没列举出来。请看下图,比上图更直接清晰:

我们再接着看apache2.conf的内容:

 

第一句的大致意思就是在说,apache2.conf是个主配置文件,当apache2服务器启动时,就将零散的配置文件以Including方式组合在一起。看到这,你就应该知道了,这个文件不是真正的具体配置文件,它只是把各个零散的配置文件以inluceding方式包含进来。apache2.conf其实就是负责调用其他配置文件的。不信看下图:

这就是将端口配置文件包含进来调用。这个配置文件它是怎么写的,apache2.conf根本是不知道到,因为不是它写的。

其他也类似,如下面的就是将配置文件conf-enable和sites-enable这两个配置启动文件包含进来。它也没具体的实现部分。

 

我们来看下mods-availablel和mods-enabled文件夹:这两个文件夹里面存放的都是一些apache2的读写操作等模块,mods-enabled是apache2服务器的启动配置文件,mods-available是apache2服务器可以使用的配置文件,如下图;

通过上面,你是不是发现了什么?

我们发现mods-enable里面的文件都是mods-available中的快捷方式(或则称为软连接)。

再看mods-available的内容,下图是mods-avalible文件夹下的rewriter模块文件信息:

我们发现,这里才是具体配置的代码实现部分。

所以,你如果想给apache2添加什么功能模块,直接建立一个从avalible中建立一个快捷方式到enabled中就行了,删除也是一样,删掉enabled中的某模块的快捷方式就行了,实际的模块代码还在available中没有消失。

我们再来看看下面两个比较重要的配置文件夹site-available和site-enabled。这两个是网站根目录的配置文件。

 

 

sites-enabled是apache2正在使用的网站配置文件,sites-available是apache2可用的网站配置文件。

enabled中只有一个000-default.conf快捷方式。availbel中有一个000-default.conf和default-ssl.conf两个文件。

000-default.conf是使用http协议网站的默认网站配置文件,而default-ss.conf是https协议网站才使用的默认网站配置文件。

https还需要申请ssl证书,这里我们就不讲default-ss.conf,反正我也用不到https协议。

 

打开000-defaut.con文件。

ServerAdmin: 设置一个邮件地址,如果服务器有任何问题将发信到这个地址, 这个地址会在服务器产生的某些页面中出现。

DocumentRoot 是这个站点的根目录,这样 Apache2 启动时会扫描 /etc/apache2/sites-enabled 中可用的 website 配置并加载。

当用户访问localhost:80 时,Apache2 就将 default 站点根目录 /var/www/html 下的index.html(或 index.PHP 等,可配置)作为请求的回应返回给浏览器,然后你能欣赏到的就是 /var/www/html/index.html 这个文件的内容了。

 

我们现在试着修改这里的根目录为:/var/www,然后写一个html文件,文件内容如下:

<html>

<head>

<body>this is my website</body>

</head>

</html>

 

特别注意;我们修改了apache2配置信息,但必须重启才能生效。

service apacehe2 restart 

 或

/etc/init.d/apache2 restart。

一定记住,每次修改配置后,都要重启apache2服务器,不然配置不会立即生效。

特别注意,我们现在这样访问网站,是不会显示具体内容的。不信看图:

我们发现,我们通过浏览器是看到了我们的test.html文件,但是为什么没显示内容呢。

那是因为服务默认的显示格式没有test.html。默认的显示格式在/etc/apache2/mods-available/dir.conf文件中。如下图所示:默认显示的格式有:index.html index.cgi index.pl index.php index.xhtml index.htm

我们在dir.conf文件最后添加test.html格式。看看能不能显示呢:

nice, 成功了。

看了这么多,你对apache2的目录是不是了解了不少呢,现在请尝试修改下网站根目录实践一下吧。

 

如果你觉得博主的文章对你有用,请给博主一个一个赞/关注。

 

 

 

  • 28
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

圣诞节不感冒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值