Adsense in contents

페이지 암호화 하는 2가지 방법 – 고정아이피 지정, 비밀번호 설정하기

페이지 암호화 언제 사용하나?

Vultr(벌쳐) 서버를 세팅하고 워드프레스, 그누보드 등을 설치도 하지만 일반 웹사이트도 만들 경우가 있습니다. 일반 웹사이트라고 해서 거창한 것은 아니고 1페이지 사이트를 만들 경우 특히 나만의 페이지가 필요할 경우 다른 사람들은 접속하지 못하고 나만 접속해야 하는 경우가 있습니다. 이럴 때 사용하는 좋은 소스를 챗GPT에게 물어봐서 만들었습니다. 실제 제가 적용하고 있는 것을 하단에 공유하고 있으니 참고 하세요.

페이지 암호화 샘플

아래 샘플 사이트는 실제로 제가 인터넷 첫화면으로 만들어서 사용하고 있는 것으로 즐겨찾는 사이트를 모아 둔 나만의 즐겨찾기 사이트 입니다.

페이지 암호화 소스

<?php
// 접속 비밀번호가 일치하거나 IP 주소가 "***.***.***.***"와 일치하는 경우 이후의 코드를 실행합니다
// 비밀번호 입력(2곳)

if ($_SERVER["REMOTE_ADDR"] !== "***.***.***.***") {
    $password = htmlspecialchars($_POST['password']); // ① 아이피 주소 & 비밀번호 입력
    if ($password !== '비밀번호') {
        // 비밀번호가 일치하지 않는 경우, 접속 비밀번호 입력 폼을 출력합니다.
        if (!isset($_COOKIE['access_password'])) {
            echo '<form action="" method="POST">';
            echo '<input type="password" name="password" placeholder="비밀번호를 입력하세요">';
            echo '<input type="submit" value="확인">';
            echo '</form>';
            exit; // 접속 비밀번호 입력 후 코드 실행을 중단합니다.
        }
    } else {
        // 비밀번호가 일치하는 경우, 쿠키를 설정하여 24시간 동안 유지합니다.
        setcookie('access_password', '비밀번호', time() + (24 * 60 * 60)); // ② 비밀번호 입력
    }
}

?>

실제 사용법

아래와 같이 나만 접속하고 싶은 페이지 상단에 php 소스 코드를 추가 하면 됩니다.

본인 아이피 주소 확인은 아래 사이트에서 가능 합니다.

<?php
// 접속 비밀번호가 일치하거나 IP 주소가 "***.***.***.***"와 일치하는 경우 이후의 코드를 실행합니다
// 비밀번호 입력(2곳)

if ($_SERVER["REMOTE_ADDR"] !== "***.***.***.***") {
    $password = htmlspecialchars($_POST['password']); // ① 아이피 주소 & 비밀번호 입력
    if ($password !== '비밀번호') {
        // 비밀번호가 일치하지 않는 경우, 접속 비밀번호 입력 폼을 출력합니다.
        if (!isset($_COOKIE['access_password'])) {
            echo '<form action="" method="POST">';
            echo '<input type="password" name="password" placeholder="비밀번호를 입력하세요">';
            echo '<input type="submit" value="확인">';
            echo '</form>';
            exit; // 접속 비밀번호 입력 후 코드 실행을 중단합니다.
        }
    } else {
        // 비밀번호가 일치하는 경우, 쿠키를 설정하여 24시간 동안 유지합니다.
        setcookie('access_password', '비밀번호', time() + (24 * 60 * 60)); // ② 비밀번호 입력
    }
}

?>

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>페이지 암호화</title>
 </head>
 <body>
  페이지 암호호 테스트 입니다.
 </body>
</html>

페이지 암호화 샘플페이지

마무리

아주 중요한 곳이 아니더라도 누군가에게 보여주고 싶은 않은 페이지가 있다면 사용해 볼만 합니다. 어렵지 않아 금방 적용할 수 있을 것입니다. 그럼 즐거운 코딩 되세요. ^^


Leave a Comment

함께보면 유용한 글


입력창에 아이콘 추가하는 방식 1가지

입력창 앞에 아이콘을 넣거나 폼 필드에 아이콘을 추가 할 때 유용하게 사용할 수 있는 코드 1가지를 알아 보겠습니다. 입력창에 아이콘 추가 – 미리보기 아래 샘플 이미지를 보시면 입력창에 아이콘 추가가 ... Read more

회사 도메인 변경 후 꼭 해야 하는 1가지?

회사 도메인 변경 후 반드시 해야 할 중요한 작업은 무엇일까요? 이전 도메인으로 접속하는 모든 트래픽을 새로운 도메인으로 리다이렉트하도록 설정하는 것이 매우 중요합니다. 이제 이 필수적인 작업 중 하나에 대해 설명하겠습니다. ... Read more

관리자 로그인 페이지 구현 1가지 – 보안 페이지 만들기

관리자 로그인 페이지를 구현하기 위해 작성하였습니다. 간단한 페이지라도 다른 사람들의 접근을 차단해야 할 때가 종종 있습니다. 이때 비밀번호 설정 시 소스 코드에 비밀번호를 직접 노출하지 않고, 해시 처리를 통해 변형된 ... Read more