nginx禁止未绑定域名访问

2019-03-04 22:21|来源: 网络

nginx 只允许某些域名访问 其他一律不能访问 ,是怎么写的?

对于这个问题可以参考官方文档

原文

In catch-all server examples the strange name “_” can be seen:

server {
    listen       80  default_server;
    server_name  _;
    return       444;
}

There is nothing special about this name, it is just one of a myriad of invalid domain names which never intersect with any real name. Other invalid names like “--” and “!@#” may equally be used.


解释:

在这个server段实例可以看到:奇怪的server_name名字“ _

server {
    listen       80  default_server;
    server_name  _;
    return       404;
}

其实这个名字没有什么特别的,它仅仅是一个许多无效的域名中的一个代表,与任何真实的名字永远不会相交。其它无效的名称,如“ - “ 和” !@# “也可同样使用。
default_server:nginx的虚拟主机是通过HTTP请求中的Host值来找到对应的虚拟主机配置,如果找不到呢?那 nginx就会将请求送到指定了 default_server 的 节点来处理

对于未绑定的域名指向你的服务器时,匹配不到你配置的虚拟主机域名后,会默认使用这个虚拟主机,然后直接返回404。

把这个server段配置添加你的nginx.conf即可


本文链接:nginx禁止未绑定域名访问,转自:http://www.nginx.cn/149.html

相关问答

更多
  • 回复 8# 的帖子 ls /usr/local/nginx/conf/vhost/ 就会列出 查看原帖>>
  • nginx有禁止ip访问的功能,比如你想禁止的代理ip是2.2.2.2,那么配置可以写: location / { deny 2.2.2.2; }当然nginx非常的灵活,他也可以禁止某个url,或者是正则匹配的规则。黑白名单都可以做,功能很强大。我只给你举了一个简单的例子。
  • nginx 只允许某些域名访问 其他一律不能访问 ,是怎么写的?对于这个问题可以参考官方文档In catch-all server examples the strange name _ can be seen:server { listen 80 default_server; server_name _; return 444;}There is nothing special about this name, it is just one of a myriad of invalid domain n ...
  • 绑定域名 server段内的server_name 百度下Nginx绑定多域名 禁止ip deny 百度下nginux 禁止ip 绑定恶意域名 就创建一个404的目录及404页面 如何把要绑定的恶意域名添加到server_name 那里
  • 这篇文章可以帮助你解决这个问题,我就是按照上面的方法解决问题的! m114.org/nginx禁止通过ip未绑定域名访问服务器/
  • #nginx.conf文件里在第一个server前加入以下代码server{ listen 80 default; server_name_; #如需通过ip访问(如网站上线前),则在站点相应的虚拟机内将listen 80;改为listen
  • 回复4# 的帖子 您好 我看了好像有一个自动绑定域名添加的吗 请问怎么弄 查看原帖>> 采纳哦
  • dwt 和lib是文件还是文件夹啊 文件类型例子: location ~* /Batch/.*\.php$ { deny all; } 目录例子 location /Batch/ { deny all; }
  • 在IIS里面分配指定的IP。设置成未未分配。 免费配置IIS支持ASP,ASP.net,PHP,MYSQL数据库等 免费配置针对WEB服务器防黑防入侵安全设置(因网络特殊复杂性不作100%安全承诺) 免费安装PHP5、Mysql5、Zend3.3、PhpMyadmin,免除自己配置的麻烦。 (56主机网-专业海外VPS主机)
  • 回复 8# 的帖子 ls /usr/local/nginx/conf/vhost/ 就会列出