zoukankan      html  css  js  c++  java
  • apache支持多主机头,并防止恶意空主机头的配置实现

    首先,需要启用

    LoadModule vhost_alias_module modules/mod_vhost_alias.so

    # Virtual hosts
    Include conf/extra/httpd-vhosts.conf

    然后,编辑conf/extra/httpd-vhosts.conf

    NameVirtualHost *:80

    #
    # VirtualHost example:
    # Almost any Apache directive may go into a VirtualHost container.
    # The first VirtualHost section is used for all requests that do not
    # match a ServerName or ServerAlias in any <VirtualHost> block.
    #
    <VirtualHost *:80>
    ServerName www.bad.com
    ErrorDocument 404 /404.html
    <Directory />
    Options Indexes FollowSymLinks
    AllowOverride None
    </Directory>
    </VirtualHost>
    <VirtualHost *:80>
    ServerName www.ok.com
    DocumentRoot "/var/www/html"
    </VirtualHost>

    原理说明:

    apache将第一个virtualhost作为默认配置,然后依次向下查找,如果有匹配中的,则采用新匹配到的配置项

    这样就可以将允许的访问主机头之外的恶意解析请求拦截在外;

    PS:网上很多配置都是在第一个virtualhost配置为Deny from all,这个返回码是403;

         采用上述配置项,返回码是404;

    在关注网站备案检测上,应该还是用上述配置比较合适;

    以上在apache 2.2.x上确认通过;

  • 相关阅读:
    30行左右代码实现一个类似httprunner的接口框架
    Python中一些高效的数据操作
    使用jsonpath解析多层嵌套的json响应信息
    操作系统的启动流程
    I/O延迟
    存储器
    多线程和多核芯片
    CPU详解(内核态和用户态)
    操作系统
    计算机组成
  • 原文地址:https://www.cnblogs.com/amoy9812/p/6382017.html
Copyright © 2011-2022 走看看