• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
잡담

아래 블루스크린 글 보고 재밌어 보여서 만들어 봤습니다.

앨런임더 365

2

3

image.png.jpg

 

100%가 다 차면 nginx(를 가장한) 404 페이지로 전환되고, 거기 있는 "404 Not Found"를 누르면...

 

https://404.alan.imdeo.kr

여기서 직접 보실 수 있습니다.

 

<!DOCTYPE html>
<html>

<head>
  <title>404 Not Found</title>
  <style>
    body {
      height: 100vh;
      margin: 0;
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    }

    .screen {
      height: 100vh;
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: #087cd8;
      color: white;
    }

    .container {
      width: 80vw;
      height: 80vh;
    }

    p {
      margin: 0;
      font-size: 2.5rem;
      text-align: left;
      font-weight: 100;
    }

    .sad-face {
      font-size: 10rem;
      font-weight: 400;
      margin-bottom: 2.5rem;
    }

    .message {
      max-width: 1100px;
      line-height: 1.5;
      margin-bottom: 2.5rem;
    }

    .percentage {
      margin-bottom: 2.5rem;
    }

    .bottom {
      display: flex;
      gap: 1.5rem;
    }

    .qr > p {
      --qr-size: 0.5rem;
      font-family: monospace;
      font-size: var(--qr-size);
      line-height: var(--qr-size);
    }

    .info {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .info > div > p {
      font-size: 1.3rem;
    }

    #support {
      margin-bottom: 0.5rem;
    }

    a {
      color: white;
      text-decoration: none;
    }

    .not-found {
      display: none;
      font-family: none;
      padding: 8px;
    }

    h1 {
      color: black;
      margin-top: 0;
    }
  </style>
</head>

<script>
  const strings = [
    [".message", "브라우저에 문제가 발생하여 새로 고침해야 합니다. 일부 오류 정보를 수집하고 있습니다. 그런 다음 자동으로 다시 시작합니다."],
    ["#complete", "완료"],
    ["#info-top-left", "이 문제와 가능한 수정 사항에 대한 자세한 내용은"],
    ["#info-top-right", "를 참조하세요."],
    ["#support", "지원 담당자에게 연락하는 경우 다음 정보를 제공하세요."],
    ["#stop-code", "중지 코드"]
  ];

  document.addEventListener("DOMContentLoaded", () => {
    if (navigator.language == "ko-KR") {
      strings.forEach(([selector, string]) => {
        document.querySelector(selector).innerHTML = string;
      });
    }

    const progress = document.getElementById("progress");
    let i = 0;

    function timeout() {
      if (i == 100) {
        const screen = document.querySelector(".screen");
        screen.remove();

        const notFound = document.querySelector(".not-found");
        notFound.style.display = "block";

        return;
      }

      i += Math.floor(Math.random() * 10);
      if (i > 100) {
        i = 100;
      }
      progress.innerHTML = i;
      setTimeout(timeout, Math.floor(Math.random() * 1000) + 700);
    }

    setTimeout(timeout, 1000);
  });
</script>

<body>
  <div class="screen">
    <div class="container">
      <p class="sad-face">:(</p>
      <p class="message">Your browser ran into a problem and needs to refresh. We're just collecting some error info, and then we'll refresh for you.</p>
      <p class="percentage"><span id="progress">0</span>% <span id="complete">Complete</span></p>
      <div class="bottom">
        <a href="https://en.wikipedia.org/wiki/HTTP_404" class="qr">
          <p>█████████████████████████████████</p>
          <p>██ ▄▄▄▄▄ █▀█ █▄█▄▀█▀▀▄ █ ▄▄▄▄▄ ██</p>
          <p>██ █   █ █▀▀▀█ ▀█  ▀▄ ▄█ █   █ ██</p>
          <p>██ █▄▄▄█ █▀ █▀▀█ ▀▀▀▄▄▄█ █▄▄▄█ ██</p>
          <p>██▄▄▄▄▄▄▄█▄▀ ▀▄█▄█ █▄▀ █▄▄▄▄▄▄▄██</p>
          <p>██▄▄▄▄▄▀▄ ▄▄▀▄▀▀█▀    █ ▀ ▀▄█▄▀██</p>
          <p>██▀▄▀▀▄▀▄ ▀█▄█▀ ▄ █▄██▄▄▄ ▀▀█▀███</p>
          <p>██▀▄▀ █▀▄▄  ▄█▄█▄  ▄█▀▀▀▀ ▀▄▄█▀██</p>
          <p>██▄█  █ ▄▄▀ ▄ ▄█▀ ▀▄██▄▄ ▀█▄▄▀███</p>
          <p>██ ██▀  ▄  ▀ ▄▀▀▀   ▀ ▀▀▀█▀▄ █▀██</p>
          <p>██ █ █▄ ▄▀▀ ▀█▀ ▄ ▀█▄█▀▄▄▀██▄▀███</p>
          <p>██▄██▄▄▄▄█ ▄██▄█▄   ▀█ ▄▄▄ ▀   ██</p>
          <p>██ ▄▄▄▄▄ █▄ ▄ ▄█▀ █▄▄  █▄█ ▄▄▀▀██</p>
          <p>██ █   █ █ ▀▀▄▀▀▀▀▀ ▀▀▄▄▄▄▄▀ ▀▀██</p>
          <p>██ █▄▄▄█ █ ▄▀█▀ ▄▄ █▄▄▀▀▄   ▄ ███</p>
          <p>██▄▄▄▄▄▄▄█▄▄▄█▄█▄██▄▄▄█▄█▄▄█▄████</p>
          <p>█████████████████████████████████</p>
        </a>
        <div class="info">
          <div>
            <p>
              <span id="info-top-left">For more information about this issue and possible fixes, visit</span>
              <a href="https://en.wikipedia.org/wiki/HTTP_404">https://en.wikipedia.org/wiki/HTTP_404</a><span id="info-top-right"></span>
            </p>
          </div>
          <div>
            <p id="support">If you call a support person, give them this info:</p>
            <p><span id="stop-code">Stop code</span>: 404_NOT_FOUND</p>
          </div>
        </div>
      </div>
    </div>
  </div>

  <div class="not-found">
    <center>
      <a href="https://www.youtube.com/watch?v=dQw4w9WgXcQ">
        <h1>404 Not Found</h1>
      </a>
    </center>
    <hr>
    <center>not nginx</center>
  </div>
</body>

</html>

 

신고공유스크랩
3

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 제목 글쓴이 날짜 조회 추천
오픈소스 개인 구독 추적기 Wallos 7 달소 2일 전23:26 341 +2
/var/www 폴더가 삭제되었습니다. ㅜ,.ㅜ 2 니속사정 5일 전20:42 296 +1
jellyfin 자원 진짜 안쓰네요 1 kmw_ 5일 전19:26 458 +1
3712
image
달소 2일 전10:59 150 0
3711
image
경호 2일 전10:34 224 0
3710
image
달소 2일 전23:26 341 +2
3709
image
달소 2일 전22:44 160 0
3708
normal
맛밥 4일 전16:13 218 0
3707
normal
니속사정 5일 전20:42 296 +1
3706
image
kmw_ 5일 전19:26 458 +1
3705
image
ljr10 5일 전18:44 265 0
3704
image
ljr10 5일 전12:45 183 0
3703
image
purndal 5일 전00:52 223 +2
3702
normal
스키피95 6일 전00:07 150 0
3701
normal
고심분투 24.05.04.17:10 263 0
3700
image
경호 24.05.04.15:50 121 0
3699
image
기현 24.05.04.07:34 562 +2
3698
image
keiminem 24.05.03.13:12 614 0
3697
normal
달소 24.05.03.11:38 362 +2
3696
image
EXP 24.05.02.23:48 110 0
3695
normal
홍익 24.05.02.19:26 249 0
3694
image
지딱코 24.05.02.14:31 256 +1
3693
image
달소 24.05.01.22:22 448 +3