• 遇到一个好玩的事情,访问别人的IP和别人的域名返回的内容竟然不一样。突然觉得很好玩,也很好奇。自己研究了一下下,就简单写一下吧~
  • 一个IP和一个域名,
  • 先讲一下公网IP没有绑定域名,但是可以通过一个没有备案的域名访问该 IP 的内容。方法:就是在本地hosts文件中,将域名和公网IP绑定。这个很基础的,简单提一下。如果相让别人也能通过域名访问你的项目,在他的电脑上配置hosts文件,绑定域名和你的IP。
  • 别人通过配置hosts文件可以通过域名访问你的 项目了,假设有这样一种情况,我在这个IP服务器上有一个项目属于私有的,我只想让指定的人比如甲看到,其实就可以把域名告诉甲,让甲配置hosts文件,然后通过你给的域名访问项目。这样即便有人知道了IP也访问不了你的项目。只有知道域名的人才能访问你的项目。怎么实现呢?看下面
    //PHP 根据host判断用户的请求时通过IP还是通过域名,这里做个简单示例,可以使用正则,做一个IP和域名的规则来匹配。
    if(strpos($_SERVER['HTTP_HOST'], '127.0.0.1') !== false){
    echo 111111;exit; // 通过IP访问的返回111不让他看其他的内容
    }elseif(strpos($_SERVER['HTTP_HOST'], 'localhost') !== false){
    echo 'localhost'; //通过指定域名访问,就让他访问项目
    }else{
    echo 'err';exit;
    } echo '这里可以写项目的内容';

    通过以上简单 实现了根据域名和IP返回不同内容。比如你的项目文档不想被所有人看到,就可以使用这种方式给项目组的人看。(当然域名要保密哦~)

PHP 根据域名和IP返回不同的内容的更多相关文章

  1. (转)建站知识:域名/ 空间/ IP/ 端口之间的关系

    先说域名解析吧,比如说你的域名是 www.sunnymould.com,这个域名对应着一个IP地址,域名解析就是把上面的域名转换成这个IP地址的过程,这样你就可以域名访问了上面地址上的内容了. 端口映 ...

  2. vc根据域名获取IP地址 gethostbyname()函数

    以下是VC Socket初始化时用到的两个函数 一.WSAStartup函数                int WSAStartup                       (         ...

  3. 域名和IP之间的关系

    域名和IP的关系 在早期的互联网时代,没有那么多的主机,全部是用ip直接访问.可是IP不符合人类的记忆习惯,于是出现域名. 域名和IP的对应关系,在早期通过电脑的hosts文件直接解析,后来互联网的发 ...

  4. DNS工作流程及原理 域名、IP与DNS的关系

    转自:http://blog.csdn.net/maminyao/article/details/7390208 一.DNS服务概述 DNS是Domain Name System的缩写,即域名系统.其 ...

  5. Java实现通过IP获取域名,通过域名获取IP

    一.通过Linux命令实现 ping www.baidu.com nslookup www.baidu.com nslookup 14.215.177.166 为什么这个命令会有一个192.168.1 ...

  6. 一文看懂:网址,URL,域名,IP地址,DNS,域名解析

    一个执着于技术的公众号 前言 今天给大家梳理一篇关于网址.URL.IP地址.域名.DNS.域名解析的白话长文,并以简单的提问-解答 形式让读者更加深刻理解,希望有助于读者的学习,面试和工作! 1.一个 ...

  7. 域名dns查询_查询域名dns ip地址

    最近有部分用户反应管理的天气网站打开偏慢,决定从每一个可以出现的问题点查起!首先就是dns! 通过360dns监控对比发现,同一组域名,15tianqi.cn的dns响应时间比较长,在300-700间 ...

  8. C#根据域名查询IP(CMD命令参数输入或者启动程序后再输入查询)

    有时因为需要,希望知道域名的IP,那用C#怎么实现呢?以下是实现代码 using System; using System.Collections.Generic; using System.Linq ...

  9. iOS根据域名获取ip地址

    引入头文件 #include <netdb.h> #include <sys/socket.h> #include <arpa/inet.h> //根据域名获取ip ...

随机推荐

  1. Android中使用LitePal操控SQLite数据库

    <第一行代码>读书手札 (一)什么是LitePal数据库 LitePal数据库是安卓的一个开源库,我们在以后的开发中,将会遇到许许多多的开源库,感谢开源社 区:因为开源社区的存在,一些我们 ...

  2. JDBC ORM(Object Relationship Database Mapping)

    ORM=Object Relationship Database Mapping 对象和关系数据库的映射 简单说,一个对象,对应数据库里的一条记录 示例:根据id返回一个Hero对象 提供方法get( ...

  3. typedef用法和陷阱

    一.typedef的用法 1.用typedef来声明新的类型名,来代替已有的类型名,也就是给类型起别名.比如 typedef float REAL; //用REAL来代表float类型 REAL a; ...

  4. python 之 面向对象基础(组合和封装)

    7.4 组合 解决类与类之间代码冗余问题有两种解决方案: 1.继承:描述的是类与类之间,什么是什么的关系 2.组合:描述的是类与类之间的关系,是一种什么有什么的关系 一个类产生的对象,该对象拥有一个属 ...

  5. dotnet Core学习之旅(二):安装IDE

    [重要:文中所有外链不能确保永久有效] >开发工具 高效的开发必然需要一个优秀的集成开发环境(IDE) 对于.NET Core 2.x可以使用包括但不限于以下IDE来进行开发. Visual S ...

  6. 去除echarts饼状图的引导线

    series: { name: "流量占比分布", type: "pie", radius: ["40%", "60%" ...

  7. [Luogu5327][ZJOI2019]语言(树上差分+线段树合并)

    首先可以想到对每个点统计出所有经过它的链的并所包含的点数,然后可以直接得到答案.根据实现不同有下面几种方法.三个log:假如对每个点都存下经过它的链并S[x],那么每新加一条路径进来的时候,相当于在路 ...

  8. POJ3368(Frequent values)--线段树

    题目在这里 3368 Accepted 7312K 1829MS C++ 6936B 题意为给你一组数据,再给定一组区间,问你这个区间内出现次数最多的元素的次数是多少. 我还记得这题是学校校赛基础的题 ...

  9. J.U.C之Condition

    此篇博客所有源码均来自JDK 1.8 在没有Lock之前,我们使用synchronized来控制同步,配合Object的wait().notify()系列方法可以实现等待/通知模式.在Java SE5 ...

  10. 基于【 责任链模式】二 || 网关zuul过滤器封装

    一.基于责任链模式封装网关拦截 上一篇文章中已经使用建造者模式对网关拦截进行封装,存在一个问题,在连接器build中,每一个拦截都要进行true判断,代码看起来冗余,下面使用责任链模式封装 1.基于责 ...