2013-08-21 3 views
1

라우터의 펌웨어에 로그인하면 예를 들어 사용자 이름과 암호를 입력하라는 메시지가 나타납니다. 어떻게 수행됩니까? 내가 말할 수있는 한 자바 스크립트의 prompt()은 하나의 값만 반환합니다. 상자를 닫을 때까지 페이지가 계속로드되기 때문에 서버 측이어야한다는 것을 알고 있습니다. 상자가 닫힐 때까지 브라우저에서 탭을 전환 할 수도 없습니다.서버 쪽 로그인 프롬프트 상자

PHP로 이와 같은 작업을 수행 할 수 있습니까? 어떻게 이뤄지나요? 웹 서버로 Apache와 사전

답변

3

는이를 위해, 기본 HTTP 인증을 사용하여 수행 사용자/암호 파일을 작성하고 폴더에 기본 HTTP 인증을 사용해야 함을 서버에 알려야합니다. 이 작업은 PHP의 문서의이 페이지를 살펴 타고 서버 설정이나 htaccess로

+0

그러나, 어떻게!? 방법? –

2

수행 할 수 있습니다 - 여기 HTTP authentication with PHP

것은 그들이 제공하는 샘플 코드입니다 : 기본적으로

<?php 
if (!isset($_SERVER['PHP_AUTH_USER'])) { 
    header('WWW-Authenticate: Basic realm="My Realm"'); 
    header('HTTP/1.0 401 Unauthorized'); 
    echo 'Text to send if user hits Cancel button'; 
    exit; 
} else { 
    echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>"; 
    echo "<p>You entered {$_SERVER['PHP_AUTH_PW']} as your password.</p>"; 
} 
?> 

, 당신이해야 할 일은 올바른 헤더를 보내면 클라이언트 브라우저가 올바른 필드를 가진 네이티브 팝업을 렌더링하는 것입니다.

사용자가 세부 정보를 제출하면 코드에서 $_SERVER['PHP_AUTH_USER']$_SERVER['PHP_AUTH_PW'] 개의 변수를 사용하여 로그인을 확인할 수 있습니다.