首页 > 其他分享 >如何禁用空主机头

如何禁用空主机头

时间:2024-03-08 15:11:06浏览次数:36  
标签:www 如何 joshua317 禁用 server nginx conf 主机

一、Nginx 空主机头禁止 如果 Nginx 配置了空主机头,那么任意域名解析指向到服务器IP,都可以访问站点,为了防止域名解析恶意指向主机,可以将 Nginx 默认的空主机头禁止,方法是通过修改 Nginx 的主配置文件 nginx.conf ,使其主机头返回错误信息 500

nginx配置默认路径:/usr/local/nginx/conf/nginx.conf

  1. 直接屏蔽未绑定域名的虚拟主机访问,返回500错误(这个错误信息可以自定义):
server
{
     listen  80;
     return 500;
}
  1. 可以做一个URL重写,把访问的流量导入到需要的网站,比如说网站的主页,配置的时候https://www.joshua317.net替换成需要的URL即可:
server
{
  listen 80 default;
  rewrite ^(.*) http://www.joshua317.com permanent; 
}
  1. 禁止空主机头的同时也禁止通过IP访问,可以写成:
server
{
  listen 80 default;
  server_name _;
  return 500;
}

这里的配置需要添加到 nginx 主配置文件里,和主配置文件的 server 并列成同一层级,可以参考下图:

 

 

二、Apache 空主机头禁止 防止域名解析,禁止apache默认的空主机头: apache配置默认路径:/etc/httpd/conf/httpd.conf

  1. 编辑配置文件,在站点配置之前再增加一个站点(上面是需要增加的站点配置,下面是正在使用的站点配置)
<VirtualHost *:80>
ServerName *****
ErrorDocument 404 /404.html
<Directory />
Options Indexes FollowSymLinks
AllowOverride None
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName www.joshua317.com
DocumentRoot "/var/www/html"
</VirtualHost>
  1. apache将第一个virtualhost作为默认配置,然后依次向下查找,如果有匹配中的,则采用新匹配到的配置项

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

 

标签:www,如何,joshua317,禁用,server,nginx,conf,主机
From: https://www.cnblogs.com/joshua317/p/18061028

相关文章

  • nginx如何配置多个vue项目?
    要在Nginx中配置多个Vue项目,您需要为每个项目设置不同的server块,并为每个项目提供不同的静态资源路径。以下是一个基本的配置示例:http{includemime.types;default_typeapplication/octet-stream;#第一个Vue项目的server配置server{l......
  • 如何通过docker容器查看run命令
    1.当你需要迁移docker的时候,忘记的run的命令可以使用一下方法blossom-backend是你的容器名字或者容器IDdockerinspect--format'dockerrun\--name{{printf"%q".Name}}\{{-with.HostConfig}}{{-if.Privileged}}--privileged\{{-en......
  • Axure Cloud如何给每个原型配置私有域名
    需求在原型发布之后,自动给原型生成一个独立访问的域名,类似http://u591bi.axshare.bushrose.cn,应该如何配置呢?准备事项已备案域名如何备案?阿里云备案流程已安装部署AxureCloud如何安装部署,请参考另外一篇文章,AxureCloud私有云最新版破解(AxureCloudforBusinessOn-P......
  • 如何利用IDM下载央视网视频
    听着音乐......
  • c# webapi 禁用单个方法(Action)与整个控制器(Controller)
      在C#中,如果你想要禁用WebAPIController下的所有方法,你可以通过在Controller上应用特定的Attribute来实现。这里有两种常见的方法来禁用所有Controller的方法:使用[NonAction]属性:这个属性可以被应用到单个的Action方法上,以指示该方法不作为Action处理。但是,如果你想禁......
  • 大咖公开课 | 探索AI的边界:如何精准地测试人工智能
    在当今数字化时代,人工智能(AI)技术已经成为我们生活中不可或缺的一部分。然而,要构建出可信赖的AI系统并非易事。这需要我们不仅深入理解人工智能的核心原理,还需要将这些理论知识应用到实际场景中。为了帮助大家系统地掌握人工智能的核心原理及在实际中的应用场景,我们特别推出了如何......
  • 提升团队效能:如何与下属进行有效沟通
    在日常的管理工作中,沟通作为一项基础而关键的技能,往往决定了团队的协作效率和目标达成率。作为一个曾经从基层员工一路成长为管理者的Angelia老师,深知沟通的艺术对于激发团队潜力的重要性。本篇文章与大家分享几个关于如何与下属进行有效沟通的实用技巧。提出目标与期望目标的明......
  • 如何配置极狐GitLab Maven 仓库
    本文作者:徐晓伟GitLab是一个全球知名的一体化DevOps平台,很多人都通过私有化部署GitLab来进行源代码托管。极狐GitLab是GitLab在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。极狐GitLabMaven仓库极狐GitLabMaven私库使用方式文档软件包库中......
  • 如何将应用一键部署至多个环境?丨Walrus教程
    在Walrus平台上,运维团队在资源定义(ResourceDefinition)中声明提供的资源类型,通过设置匹配规则,将不同的资源部署模板应用到不同类型的环境、项目等。与此同时,研发人员无需关注底层具体实现方式,通过创建Resource对象声明需要使用的资源类型及基本信息,就可以灵活地在各种环境中自......
  • ChatGPT的出现,会如何改变营销行业的未来?
    随着数字营销的不断发展,支持数字营销的技术也在不断发展。OpenAI的ChatGPT是一项备受关注的突破性工具。凭借其先进的自然语言处理能力,ChatGPT已被证明是全球营销人员的宝贵资产。在这份入门指南中,我们将探讨ChatGPT对数字营销专家及其客户的影响以及如何在营销工作中利用......