> 백엔드 개발 > PHP 튜토리얼 > PHP에서 핫링크를 방지하는 방법에 대한 자세한 설명

PHP에서 핫링크를 방지하는 방법에 대한 자세한 설명

小云云
풀어 주다: 2023-03-19 20:02:02
원래의
2980명이 탐색했습니다.

이 글은 주로 PHP의 안티 핫링크 방법을 소개하고, PHP의 안티 핫링크와 관련된 기술과 구체적인 구현 기술을 예제 형식으로 분석하여 도움이 필요한 모든 분들께 도움이 되기를 바랍니다. .

$_SERVER['HTTP_REFERER'] 획득 상황 $_SERVER['HTTP_REFERER']的获取情况

注意 $_SERVER['HTTP_REFERER'] 并不一定总能获取到,只有在以下情况下才能获取到:

一、能够取到HTTP_REFERER的情况为以下几种:

1.直接用
2.用Submit或提交的表单(POST or GET)
3.使用Jscript提交的表单(POST or GET)

二、不能取到的情况有以下几种:

1.从收藏夹链接
2.单击”主页”或者自定义的地址
3.利用Jscript的location.href or location.replace()
4.在浏览器直接输入地址
5.<%Response.Redirect%>
6.<%Response.AddHeader%>或转向
7.用XML加载地址

strrpos函数讲解:

strrpos — 计算指定字符串在目标字符串中最后一次出现的位置

说明

int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )<br>

참고 $_SERVER['HTTP_REFERER']를 항상 얻을 수 있는 것은 아니며 다음 상황에서만 얻을 수 있습니다. 1. HTTP_REFERER를 얻을 수 있는 상황은 다음과 같습니다. 1. 3. Jscript(POST 또는 GET)를 사용하여 제출된 양식 2. 다음과 같은 상황이 발생하지 않습니다.
2.직접 사용 제출 또는 <입력 유형=이미지>를 사용하여 양식을 제출하세요(POST 또는 GET)

1. 즐겨찾기 링크

2. "홈" 또는 맞춤 주소를 클릭하세요

3. Jscript의 location.href 또는 location.replace()

4를 사용하세요. 브라우저에 주소를 직접 입력하세요

5. <%Response.Redirect%>

6. <%Response.AddHeader%> 또는 리디렉션

7. XML을 사용하여 주소

strrpos를 로드합니다. 함수 설명:

strrpos — 대상 문자열


Explanation

int strrpos에서 지정된 문자열이 마지막으로 나타나는 위치를 계산합니다. ( string $ haystack , string $needle [, int $offset = 0 ] )<br>$haystack 문자열에서 needle이 마지막으로 나타나는 숫자 위치를 반환합니다.

$haystack이 문자열에서 찾으세요.

$needle

needle이 문자열이 아닌 경우 정수로 변환되어 문자의 순차적인 값으로 처리됩니다.

반환값

바늘이 존재하는 위치를 반환합니다. 찾을 수 없으면 FALSE를 반환합니다. HOTLINK DETECTION CODE : ASD.PHP


R

<?php
//防盗链技术
//先判断是否获取到 $_SERVER[&#39;HTTP_REFERER&#39;] 变量
if(isset($_SERVER[&#39;HTTP_REFERER&#39;])){
  //判断$_SERVER[&#39;HTTP_REFERER&#39;]是不是以http://localhost/开始的
  if(strpos($_SERVER[&#39;HTTP_REFERER&#39;],"http://localhost")==0){
    echo &#39;<img src="a.png"/>&#39;;
  }
  else{
    header("Location:warning.php");//跳转页面到warning.php
    //echo $_SERVER["HTTP_REFERER"];
  }
}
else {
  header("Location:warning.php");
}
?>
로그인 후 복사
SWARNING.PHP

🎜🎜🎜R
<html>
<b>倒链</b>
</html>
로그인 후 복사
ATI-HOTLINK VERIFICE CODEINGIONION CODE🎜🎜🎜🎜R
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<a href="http://localhost/wml/asd.php" rel="external nofollow" >验证防盗链</a>
</body>
</html>
로그인 후 복사
🎜 위의 것은 원칙을 이해하는 것입니다. nginx와 같은 서버 구성 🎜🎜🎜(gif|jpg|jpeg|png|bmp|swf) 🎜 및 기타 파일의 화이트리스트 🎜🎜에 대한 액세스 구성 자세한 구성은 Baidu🎜🎜에서 검색할 수 있습니다. 관련 권장 사항: 🎜🎜🎜php 도난 방지 링크를 해독하려면🎜🎜🎜🎜PHP를 사용하여 도난 방지를 완료하세요. 체인 방식에 대한 자세한 설명🎜🎜🎜🎜php 안티 핫링크 코드🎜🎜🎜🎜🎜

위 내용은 PHP에서 핫링크를 방지하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿