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

2024-02-03 01:32

本文主要是介绍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的目录是不是了解了不少呢,现在请尝试修改下网站根目录实践一下吧。

 

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

 

 

 

这篇关于Apache2配置目录分析(详细版)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/672605

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

Redis中的有序集合zset从使用到原理分析

《Redis中的有序集合zset从使用到原理分析》Redis有序集合(zset)是字符串与分值的有序映射,通过跳跃表和哈希表结合实现高效有序性管理,适用于排行榜、延迟队列等场景,其时间复杂度低,内存占... 目录开篇:排行榜背后的秘密一、zset的基本使用1.1 常用命令1.2 Java客户端示例二、zse

Linux挂载linux/Windows共享目录实现方式

《Linux挂载linux/Windows共享目录实现方式》:本文主要介绍Linux挂载linux/Windows共享目录实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录文件共享协议linux环境作为服务端(NFS)在服务器端安装 NFS创建要共享的目录修改 NFS 配

mysql8.0.43使用InnoDB Cluster配置主从复制

《mysql8.0.43使用InnoDBCluster配置主从复制》本文主要介绍了mysql8.0.43使用InnoDBCluster配置主从复制,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录1、配置Hosts解析(所有服务器都要执行)2、安装mysql shell(所有服务器都要执行)3、

Redis中的AOF原理及分析

《Redis中的AOF原理及分析》Redis的AOF通过记录所有写操作命令实现持久化,支持always/everysec/no三种同步策略,重写机制优化文件体积,与RDB结合可平衡数据安全与恢复效率... 目录开篇:从日记本到AOF一、AOF的基本执行流程1. 命令执行与记录2. AOF重写机制二、AOF的

解决docker目录内存不足扩容处理方案

《解决docker目录内存不足扩容处理方案》文章介绍了Docker存储目录迁移方法:因系统盘空间不足,需将Docker数据迁移到更大磁盘(如/home/docker),通过修改daemon.json配... 目录1、查看服务器所有磁盘的使用情况2、查看docker镜像和容器存储目录的空间大小3、停止dock

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

Python中isinstance()函数原理解释及详细用法示例

《Python中isinstance()函数原理解释及详细用法示例》isinstance()是Python内置的一个非常有用的函数,用于检查一个对象是否属于指定的类型或类型元组中的某一个类型,它是Py... 目录python中isinstance()函数原理解释及详细用法指南一、isinstance()函数