$str = str_replace("http://","",$url) //去掉http://
$strdomain = explode("/",$str) // 以“/”分开成数组
$domain= $strdomain[0] //取第一个“/”以前的字符
用上面的方法才准确无误,如果你用PHP自带的函数就不对如:
$_SERVER['SERVER_NAME'] 这个函数它获取的是服务器域名
获取当前的域名:echo $_SERVER['SERVER_NAME']
//获取来源网址,即点击来到本页的上页网址
echo $_SERVER["HTTP_REFERER"]
$_SERVER['REQUEST_URI']//获取当前域名的后缀
$_SERVER['HTTP_HOST']//获取当前域名
dirname(__FILE__)//获取当前文件的物理路径
dirname(__FILE__)."/../"//获取当前文件的上一级物理路径
?>
PHP中的 $_SERVER["HTTP_REFERER"] 预定义服务器变量可以判断来路。$_SESSION['HTTP_REFERER']可以获取当前链接的上一个连接的来源地址,即链接到当前页面的前一页面的 URL 地址。
一般用于判断浏览者是从哪里点击链接跳到本页面的,即所说的来路,还可以通过判断来路来防止盗链。
例如:
<?php
$url_array = parse_url($_SESSION['HTTP_REFERER'])
//如果页面的域名不是服务器域名,就连接到登陆窗口
if($_SERVER['HTTP_HOST'] != $url_array["host"]) {
header("location: login.php")
exit
}
?>
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)