서버 점검 안내

dsclub은 서비스의 안정성과 성능 향상을 위해
매일 04시 30분에 정기 점검이 진행됩니다.

점검 시간: 오전 4시 30분 ~ 4시 35분

해당 시간 동안 일시적으로 서비스에 접속이 불가능하오니, 양해 부탁드립니다.

세이프 서치 - 첫 사용자를 위한 가이드 > 코딩 스토리

세이프 서치 - 첫 사용자를 위한 가이드

페이지 정보

작성자 profile_image tak2 (192.♡.0.1) 작성일 23-11-02 02:43 조회 9,220 댓글 2

본문

1. 첨부파일을 압축 해제합니다.

2. data.txt파일은 웹서버의 /루트경로인 /var/www/html에 위치하게 해주세요 (아파치 기준)

3. safe_search.php를 /adm폴더에 넣어주세요.

4. admin.menu300.php에 아래의 코드를 ); 위에 삽입해주세요.

[code]array('300850', 'safe-search', G5_ADMIN_URL.'/safe_search.php')[/code]
5. array('300850', 'safe-search', G5_ADMIN_URL.'/safe_search.php')코드 위의 코드 끝에 ,를 붙여주세요.
6. head.php(head.skin.php)나 search.php(search.skin.php) 또는 board.php(board.skin.php)에 아래의 코드를 삽입해주세요.

<?php

function loadTargetTexts() {

  $currentDomain = $_SERVER['HTTP_HOST'];

  // 데이터 파일 경로를 지정합니다.

  $targetTextsUrl = "https://{$currentDomain}/data.txt";

  try {

    // 파일의 내용을 가져옵니다.

    $data = file_get_contents($targetTextsUrl);

    $targetTexts = preg_split('/\r

|\r|

/', $data);

    $targetTexts = array_filter($targetTexts, 'trim');

    

    return $targetTexts;

  } catch (Exception $error) {

    echo "텍스트 파일을 불러오는 중 오류가 발생했습니다: ", $error->getMessage(), "

";

    return [];

  }

}

$targetTexts = loadTargetTexts();

echo "<script>var targetTexts = " . json_encode($targetTexts) . ";</script>";

?>

<script>

  function blurMatchingTexts(targetTexts) {

    let textNodes = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT, null, false);    

    let currentNode;

    while (currentNode = textNodes.nextNode()) {

      let nodeValue = currentNode.nodeValue.trim();

      if (targetTexts.includes(nodeValue)) {

        currentNode.parentElement.style.filter = "blur(5px)";

      }

    }

  }

  function initialize() {

    blurMatchingTexts(targetTexts);

    const observer = new MutationObserver(mutations => {

      blurMatchingTexts(targetTexts);

    });

    

    observer.observe(document.body, { subtree: true, childList: true, characterData: true });

  }

  window.addEventListener("load", initialize);

</script>

 
7. 세이프 서치 - 검열할 단어를 작성하세요 제목 아래의 입력칸에 검열할 단어를 작성하고 저장 버튼을 눌러주세요.
 - 데이터는 줄바꿈 형태로 저장합니다. 
좋은 예시)
텍스트1
텍스트2
텍스트3
텍스트4

data.txt에는 텍스트가 없이 줄바꿈이 되면 안됩니다. (전체 화면이 블러처리되거나 작동 안해요)
좋지 않은 예시)
텍스트1
텍스트2
텍스트3

텍스트5
텍스트6

또한 텍스트 뒤의 줄바꿈도 안됩니다. 저장할 때는 텍스트 뒤에 줄바꿈 처리된 것이 있는지 확인해주세요.

8. 기본 제공 데이터를 이용해보세요. (약 400개의 기본 검열 데이터)
좋아요65 이 글을 좋아요하셨습니다
url 복사 카카오톡 공유 라인 공유 페이스북 공유 트위터 공유

2kat님의 댓글

no_profile 2kat 아이피 (222.♡.250.95) 작성일

좋은 자료 감사합니다.

2kat님의 댓글

no_profile 2kat 아이피 (222.♡.250.95) 작성일

좋은 자료 감사합니다.

전체 269건
게시물 검색

접속자집계

오늘
876
어제
1,445
최대
4,271
전체
291,786