转载文章,亲试

Apache2.4以后的版本编译依赖apr,所以,编译之前需要先安装apr及apr-util。

编译参数只是一个参考作用,这个参数是我平常使用的,具体工作中的需求还是要区别对待的

一些注解:
        --enable-so  启动模块动态装卸载
        --enable-ssl 编译ssl模块
        --enable-cgi 支持cgi机制(能够让静态web服务器能够解析动态请求的一个协议)
        --enable-rewrite  支持url重写     
        --with-zlib  支持zlib压缩     
        --with-pcre  支持正则表达式
        --with-apr=/usr/local/apr  指明依赖的apr所在目录
        --with-apr-util=/usr/local/apr-util/  指明依赖的apr-util所在的目录
        --enable-mpms-shared=all   以共享方式编译的模块
        --with-mpm=prefork         指明httpd的工作方式为prefork
---------------------

httpd.conf配置文件详解

如果该虚拟目录下没有 index.html,浏览器也会显示该虚拟目录的目录结构,列出该虚拟目录下的文件和子目录。

如何禁止 Apache 显示目录列表呢?

要禁止 Apache 显示目录结构列表,只需将 Option 中的 Indexes 去掉即可。

比如我们看看一个目录的目录配置:

<Directory "D:/Apa/blabla">
 Options Indexes FollowSymLinks #---------->Options FollowSymLinks
 AllowOverride None
 Order allow,deny
 Allow from all
</Directory>
你只需要将上面代码中的 Indexes 去掉,就可以禁止 Apache 显示该目录结构。用户就不会看到该目录下的文件和子目录列表了。

Indexes 的作用就是当该目录下没有 index.html 文件时,就显示目录结构,去掉 Indexes,Apache 就不会显示该目录的列表了。

第二种方法
解决办法:
        1、编辑httpd.conf文件
            vi ./conf/httpd.conf

找到如下内容:
          ?BR>          <Directory “C:/Program Files/Apache2.2/htdocs”>
              #
              # Possible values for the Options directive are “None”, “All”,
              # or any combination of:
                 Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
              #
              # Note that “MultiViews” must be named *explicitly* — “Options All”
              # doesn’t give it to you.
              #
              # The Options directive is both complicated and important. Please see
              # http://httpd.apache.org/docs/2.2/mod/core.html#options
              # for more information.
              #
              Options Indexes FollowSymLinks

#
              # AllowOverride controls what directives may be placed in .htaccess files.
              # It can be “All”, “None”, or any combination of the keywords:
              #   Options FileInfo AuthConfig Limit
              #
              AllowOverride None

#
              # Controls who can get stuff from this server.
              #
              Order allow,deny
              Allow from all

</Directory>
          ……

在Options Indexes FollowSymLinks在Indexes前面加上 – 符号。
        即: Options -Indexes FollowSymLinks
   【备注:在Indexes前,加 + 代表允许目录浏览;加 – 代表禁止目录浏览。】

这样的话就属于整个Apache禁止目录浏览了。

如果是在虚拟主机中,只要增加如下信息就行:
           <Directory “D:test”>
             Options -Indexes FollowSymLinks
             AllowOverride None
             Order deny,allow
             Allow from all
         </Directory>
     这样的话就禁止在test工程下进行目录浏览。

备注: 切记莫把“Allow from all”改成 “Deny from all”,否则,整个网站都不能被打开。
   <Finished>

还有一种方法:

可以在根目录的 .htaccess 文件中输入

<Files *>
Options -Indexes
</Files>
就可以阻止Apache 将目录结构列表出来。

要想列出上述虚拟目录的目录结构,前提是需要开启下面的模块功能,否则重启httpd服务报错,

而且如果在ifModule模块中的内容前面加#号不表示注释,需要放到要执行参数之后,否则也无

法列出虚拟目录的目录结构。

<IfModule dir_module>
  DirectoryIndex index.html
  #DirectoryIndex index.html index.php
</IfModule>

Apache2.4常用编译参数的更多相关文章

  1. php 常用编译参数

    安装依赖 yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng li ...

  2. nginx常用编译参数

    ./configurate --prefix=/app/tengine --user=www --group=www --with-http_v2_module --with-http_ssl_mod ...

  3. apache编译参数详解

    常用编译参数: ./configure     //配置源代码树–prefix=/usr/local/apache    //体系无关文件的顶级安装目录PREFIX ,也就Apache的安装目录.–e ...

  4. Linux源码包安装程序

    ★安装OS时,建议提前安装开发组件 CentOS 6:Development Tools.Server Platform DevelopmentCentOS 7:Development Tools.D ...

  5. WINDOWS下如何安装GCC(转载http://nirvana.cublog.cn;作者:北斗星君(黄庠魁))

    第一章 在视窗操作系统下的GCC 第一节 GCC家族概览 GCC 是一个原本用于 Unix-like 系统下编程的编译器.不过,现在 GCC 也有了许多 Win32 下的移植版本.所以,也许对于许多 ...

  6. ubuntu16.04安装wordpress

    ubuntu16.04安装wordpress和centos7安装wordpress存在一定的差异. 当然共性大于差异. 共性是lamp环境. wordpress的必备环境. 先共性再差异. 一.搭建l ...

  7. Exp8 web基础

    20155332<网络对抗>Exp5 MSF基础应用 1.实验环境搭建 1.apache的安装与配置 安装:sudo apt-get install apache2 开启:service ...

  8. Ubuntu安装配置MySQL数据库,Apache,PHP

    MySQL安装 第一步:首先检查是否安装: sudo netstat -tap| grep mysql 如果没有任何反应则没有安装 第二步:执行命令安装mysql: sudo apt-get inst ...

  9. 在Linux和Windows系统上安装Nginx服务器的教程

    在Linux和Windows系统上安装Nginx服务器的教程  1.在CentOS系统上安装Nginx 在 CentOS6 版本的 EPEL 源中,已经加入了 nginx 的 rpm 包,不过此 RP ...

随机推荐

  1. S-阶乘除法

    输入两个正整数 n, m,输出 n!/m!,其中阶乘定义为 n!= 1*2*3*...*n (n>=1). 比如,若 n=6, m=3,则n!/m!=6!/3!=720/6=120. 是不是很简 ...

  2. Redis主从架构核心原理

    Redis-Cluster工作原理: redis集群内置了16384个哈希槽,当需要在 Redis 集群中放置一个 key-value 时,redis 先对 key 使用 crc16 算法算出一个结果 ...

  3. 【源码解读】pix2pix(一):训练

    源码地址:https://github.com/mrzhu-cool/pix2pix-pytorch 相比于朱俊彦的版本,这一版更加简单易读 训练的代码在train.py,开头依然是很多代码的共同三板 ...

  4. git LF will be replaced by CRLF in hellogit.txt

    这个是换行符的问题 参见:https://blog.csdn.net/starry_night9280/article/details/53207928

  5. (架构)React Native 导出项目全局共用组件的模块

    自定义组件全局使用(类似如下) import { ReactNavComponent, Widget, Util } from 'rn-yunxi'; const { RegexpUtil, Stor ...

  6. STM32F407 跑马灯实验

    1.库函数版本调用的函数有哪些?对应的源文件/头文件是哪个? 库函数 源文件 头文件 RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE) stm3 ...

  7. 【转】uboot中的mmc命令

    转自:https://www.cnblogs.com/yxwkf/p/3855383.html 1:mmcinfo 输入: mmcinfo 显示结果:Manufacturer ID: 45OEM: 1 ...

  8. 数据仓库Hive(一)——hive简介,产生,安装

    1.Hive简介 数据仓库 解释器.编译器.优化器等 运行时,元数据存储在关系型数据库里面 1.1数据库和数据仓库的区别 数据库需要立即返回结果,数据仓库不需要 数据仓库能收纳各种数据源,而数据库只能 ...

  9. 19Redis

    1.概念 redis是一款高性能的NOSQL系列的非关系型数据库 1.1什么是NOSQL NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非 ...

  10. 10年前文章_mysql 中文设置

    下面的设置针对GB2312, 1  创建数据库时使用 GBK 字符集 CREATE DATABASE `orange` DEFAULT CHARACTER SET gbk COLLATE gbk_ch ...