本文介绍下,在php中,获取域名以及域名对应的IP地址的方法,有需要的朋友参考下。
在php中可以使用内置函数gethostbyname获取域名对应的IP地址,比如:
2 |
echo gethostbyname("www.jbxue.com"); |
以上会输出域名所对应的的IP。
对于做了负载与cdn的域名来讲,可能返回的结果会有不同,这点注意下。
下面来说说获取域名的方法,例如有一段网址:http://www.jbxue.com/all-the-resources-of-this-blog.html
方法1,
复制代码代码示例:
//全局数组
echo $_SERVER[“HTTP_HOST”];
//则会输出www.jbxue.com
本地测试则会输出localhost。
方法2,使用parse_url函数;
2 |
$url ="http://www.jbxue.com/index.php?referer=jbxue.com"; |
输出为数组,结果为:
Array
(
[scheme] => http
[host] => www.jbxue.com
[path] => /index.php
[query] => referer=jbxue.com
)
说明:
scheme对应着协议,host则对应着域名,path对应着执行文件的路径,query则对应着相关的参数;
方法3,采用自定义函数。
02 |
$url ="http://www.jbxue.com/index.php?referer=jbxue.com"; |
04 |
function get_host($url){ |
06 |
$url=Str_replace("http://","",$url); |
07 |
//获得去掉http://url的/最先出现的位置 |
08 |
$position=strpos($url,"/"); |
09 |
//如果没有斜杠则表明url里面没有参数,直接返回url, |
14 |
echo substr($url,0,$position); |
方法4,使用php正则表达式。
2 |
header("Content-type:text/html;charset=utf-8"); |
3 |
$url ="http://www.jbxue.com/index.php?referer=jbxue.com"; |
4 |
$pattern="/(http:\/\/)?(.*)\//"; |
5 |
if(preg_match($pattern,$url,$arr)){ |
- Flask框架获取用户IP地址的方法
本文实例讲述了python使用Flask框架获取用户IP地址的方法.分享给大家供大家参考.具体如下: 下面的代码包含了html页面和python代码,非常详细,如果你正使用Flask,也可以学习一下最 ...
- C#获取真实IP地址实现方法
通常来说,大家获取用户IP地址常用的方法是: string IpAddress = ""; if((HttpContext.Current.Request.ServerVariab ...
- .net core获取本地Ip地址的方法
笔记: /// <summary> /// 获取本地Ip地址 /// </summary> /// <returns></returns> public ...
- 获取用户Ip地址通用方法常见安全隐患(HTTP_X_FORWARDED_FOR)
分析过程 这个来自一些项目中,获取用户Ip,进行用户操作行为的记录,是常见并且经常使用的. 一般朋友,都会看到如下通用获取IP地址方法. function getIP() { if (isset($_ ...
- python获取本地ip地址的方法
#_*_coding:utf8_*_ #以下两种方法可以在ubuntu下或者windows下获得本地的IP地址 import socket # 方法一 localIP = socket.gethost ...
- 集群环境下JSP中获取客户端IP地址的方法
String ip = request.getHeader("X-Forwarded-For");if (ip == null || ip.length() == 0 || &qu ...
- php获取客户端IP地址的方法
参考:https://www.cnblogs.com/rendd/p/6183094.html <?php function getip() { //strcasecmp 比较两个字符,不区分大 ...
- 获取用户Ip地址通用方法
1 public static function getIp() 2 { 3 if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"]) 4 { ...
- 获取树莓派ip地址的方法
1.有显示器 (1)鼠标停留在屏幕右上角网络图标上,2-3秒会显示网络连接信息(2) 图形界面下打开终端运行ifconfig命令 2.登录路由器查看名叫raspberry的设备 3.电脑上运行命 ...
- 【转】Asp.Net Core2.0获取客户IP地址,及解决发布到Ubuntu服务器获取不到正确IP解决办法
1.获取客户端IP地址实现方法(扩展类) using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc.ModelBinding; u ...
随机推荐
- 经常使用的Hql语句
// HQL: Hibernate Query Language. // 特点: // >> 1,与SQL类似.SQL中的语法基本上都能够直接使用. // >> 2.SQL查询 ...
- Mysql又一次整理笔记--woods备忘
==============================SQL备忘 CRUD 查询 多表 事件等=============================== ------------------ ...
- iOS开发多线程篇 10 —NSOperation基本操作
iOS开发多线程篇—NSOperation基本操作 一.并发数 (1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3 (2)最大并发数:同一时间最多只能执行的任务的个数. ...
- JVM内存监控:visualVM jconsole jstatd jmap
本文是亲自测试的详细配置过程,不是转载而且linux下不需修改/etc/hosts文件 由于在建项目的需要,监控tomcat的内存使用,检查内存泄漏的情况.其实JDK自身已经提供了很多工具,都在JAV ...
- Swift 开源 Linux Ubuntu Install
Swift 开源了,它现在变成跨平台的了,开源后的 Swift 不止能运行在 MAC 和 iOS 平台,现在也可以运行在 Linux 平台了.swift.org 网站上面提供了在 Linux 上面安装 ...
- 个人博客开发之 ueditor 安装
- Web services 有两种类型的应用
可重复使用的应用程序组件 有一些功能是不同的应用程序常常会用到的.那么为什么要周而复始地开发它们呢? Web services 可以把应用程序组件作为服务来提供,比如汇率转换.天气预报或者甚至是语言翻 ...
- 一个简单的servlet容器
[0]README 0.1)本文部分文字转自 “深入剖析Tomcat”,旨在学习 一个简单的servlet容器 的基础知识: 0.2)for complete source code, pleas ...
- Fedora13下编译busybox-1.15.0出现can not find lcrypt错误
在Fedora 13 系统上编译busybox(非交叉编译)产生错误 root@localhost # make ... gcc -Wall -Wshadow -Wwrite-strings -Wun ...
- 内存空间申请(C)
标准C,C++: malloc----free new----delete WINDOWS API: gnew(.net) LocalAlloc----LocalFree GlobalAlloc--- ...