>백엔드 개발 >PHP 문제 >PHP에서 PC 접근을 차단하는 방법

PHP에서 PC 접근을 차단하는 방법

藏色散人
藏色散人원래의
2022-11-08 10:31:461449검색

PHP에서 PC 액세스를 금지하는 방법: 1. PHP 샘플 파일을 생성합니다. 2. "public static function check_wap(){...}"을 통해 모바일 액세스인지 확인합니다. 4. , "HTTP_USER_AGENT"에서 모바일 브라우저의 키워드를 찾으십시오.

PHP에서 PC 접근을 차단하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 8.1, Dell G3 컴퓨터.

PHP에서 PC 액세스를 비활성화하는 방법은 무엇입니까?

PHP는 휴대폰으로 접속이 가능하지만 PC에서는 접속이 금지되어 있습니다

코드는 온라인으로 옮겨져 테스트를 거쳤습니다(IOS 휴대폰). 환경 문제로 인해 직접 테스트하실 수 있습니다. 제한 사항으로 인해 휴대폰 스크린샷을 보낼 수 없으므로 컴퓨터를 사용하여 캡처할 수 있습니다. PHP 백엔드 확인 방법, false이면 모바일 액세스가 아니며, true를 반환하면 모바일 액세스입니다.

public static function check_wap()
{
// 如果有HTTP_X_WAP_PROFILE则一定是移动设备
if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
return true;
}
//如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
if (isset($_SERVER['HTTP_VIA'])) {
//找不到为flase,否则为true
if (stristr($_SERVER['HTTP_VIA'], "wap")) {
return true;
}
}
//协议法,因为有可能不准确,放到最后判断
if (isset($_SERVER['HTTP_ACCEPT'])) {
// 如果只支持wml并且不支持html那一定是移动设备
// 如果支持wml和html但是wml在html之前则是移动设备
if ((strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;vnd.wap.wml&#39;) !== false) && (strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;text/html&#39;) === false || (strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;vnd.wap.wml&#39;) < strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;text/html&#39;)))) {
return true;
}
}
return false;
}

다음 코드는 PC 브라우저에서 액세스해야 하는 경우 브라우저 F12 디버깅 시나리오를 결정하는 것입니다. , 세 번째 판단(합의 방법) 위에 이 코드를 추가하면 됩니다. 코드가 너무 길기 때문에 축소하고 스크린샷을 찍으세요.

//判断手机发送的客户端标志,兼容性有待提高
if (isset($_SERVER[&#39;HTTP_USER_AGENT&#39;])) {
$clientkeywords = array (
&#39;nokia&#39;,
&#39;sony&#39;,
&#39;ericsson&#39;,
&#39;mot&#39;,
&#39;samsung&#39;,
&#39;htc&#39;,
&#39;sgh&#39;,
&#39;lg&#39;,
&#39;sharp&#39;,
&#39;sie-&#39;,
&#39;philips&#39;,
&#39;panasonic&#39;,
&#39;alcatel&#39;,
&#39;lenovo&#39;,
&#39;iphone&#39;,
&#39;ipod&#39;,
&#39;blackberry&#39;,
&#39;meizu&#39;,
&#39;android&#39;,
&#39;netfront&#39;,
&#39;symbian&#39;,
&#39;ucweb&#39;,
&#39;windowsce&#39;,
&#39;palm&#39;,
&#39;operamini&#39;,
&#39;operamobi&#39;,
&#39;openwave&#39;,
&#39;nexusone&#39;,
&#39;cldc&#39;,
&#39;midp&#39;,
&#39;wap&#39;,
&#39;mobile&#39;,
&#39;phone&#39;,
);
// 从HTTP_USER_AGENT中查找手机浏览器的关键字
if (preg_match("/(" . implode(&#39;|&#39;, $clientkeywords) . ")/i", strtolower($_SERVER[&#39;HTTP_USER_AGENT&#39;]))) {
return true;
}
}

추천 학습: "PHP Video Tutorial"

위 내용은 PHP에서 PC 접근을 차단하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.