[G5] 게시글 본문 작성후 magnet 링크가 사라지는 현상 > 온라인강의

본문 바로가기
 
 
 
비즈니스의 시작 비즈명함 ~ 가격, 품질, 배송 3가지 만족을 드리는 비즈명함 / 즉석명함 / 급행서비스 / 서울 전지역 수도권일부 3시간배송

오늘 9
어제 1,401
최대 2,526
전체 3,673,212

최근 방문자

2264
2251
2158
2052
1401
9
12 13 14 15 16 17
select * from g5_menu where me_use = '1' and me_link like '%lecture%'
온라인강좌 홈 > 온라인강좌 > 온라인강좌

그누보드 | [G5] 게시글 본문 작성후 magnet 링크가 사라지는 현상

페이지 정보

작성일2017-09-20 12:23 조회521회 댓글0건

본문

HTML Purifier가 적용되는 그누보드5에서 게시글 본문 작성후 magnet 링크가 사라지는 현상이 있습니다.


<a href="magnet:?xt=urn:btih:test1234">magnet:?xt=urn:btih:test1234</a>  를 본문에 입력후 저장하면
<a rel="noreferrer">magnet:?xt=urn:btih:test1234</a>  이렇게 결과가 표시됩니다.

SafeIframe 으로는 처리가 안됩니다.  
주소가 http 가 아닌 magnet 으로 시작하기때문에 추가적인 purifier 예외규칙이 필요합니다.


참고로 마그넷은 아래와 같은 규칙으로 링크를 생성합니다. 
magnet:?xt=urn:tree:tiger:hash_links
magnet:?xt=urn:sha1:hash_links
magnet:?xt=urn:bitprint:hash_links
magnet:?xt=urn:ed2k:hash_links
magnet:?xt=urn:aich:hash_links
magnet:?xt=urn:kzhash:hash_links
magnet:?xt=urn:btih:hash_links
magnet:?xt=urn:md5:hash_links


1. 그누보드5 / plugin / htmlpurifier / magnet.php 추가

<?php
/**
Validates magnet (BitTorrent hash links)
@todo require xt= GET parameter
출처 : https://github.com/foocorp/gnu-social/commit/90045d66ea8dd098cb57b5844f05050a528bf037 
*/

class HTMLPurifier_URIScheme_magnet extends HTMLPurifier_URIScheme
{
    /**
     * @type bool
     */
    public $browsable = false;

    /**
     * @type bool
     */
    public $may_omit_host = true;

    /**
     * @param HTMLPurifier_URI $uri
     * @param HTMLPurifier_Config $config
     * @param HTMLPurifier_Context $context
     * @return bool
     */
    public function doValidate(&$uri, $config, $context)
    {
        $uri->userinfo = null;
        $uri->host     = null;
        $uri->port     = null;
        return true;
    }
}



2. 그누보드5 / lib / common.lib.php 에  mgnet.php 를 include

    include_once(G5_PLUGIN_PATH.'/htmlpurifier/HTMLPurifier.standalone.php');
    
를 아래와 같이 변경

    include_once(G5_PLUGIN_PATH.'/htmlpurifier/HTMLPurifier.standalone.php');
    include_once(G5_PLUGIN_PATH.'/htmlpurifier/magnet.php');



3. 그누보드5 / lib / common.lib.php 에 magnet 예외 규칙 추가 

    $config->set('Attr.AllowedFrameTargets', array('_blank'));
    
아래에 내용 추가
    
    $config->set(여기에_무언가를_꾸며야하는데_방법을_찾는중입니다);



관련자료
http://htmlpurifier.org/demo.php
https://github.com/foocorp/gnu-social/commit/90045d66ea8dd098cb57b5844f05050a528bf037 
http://htmlpurifier.org/docs/enduser-uri-filter.html 
https://sir.kr/qa/204512
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글목록

등록된 댓글이 없습니다.


목록

Total 2,151건 1 페이지
온라인강의 목록
번호 제목
공지
일반 온라인 강좌를 소개합니다. (up.2017-12-05 16:33) 인기글 Hit.14390
2150
일반 파일명에 허용/금지 글자 (up.2017-12-15 06:00) Hit.23
2149
2148
2147
2146
2145
그누보드 [G5] 모바일 메뉴 (up.2017-12-11 11:17) 첨부파일 Hit.48
2144
2143
2142
2141
MSSQL CentOS7 + PHP7 + SQL Server 연결 (up.2017-12-07 16:22) Hit.140
2140
2139
Linux [FreeTDS] TDS(Tabular Data Stream) (up.2017-12-07 07:03) Hit.141
2138
Linux SED 명령어 사용법 (wr.2017-12-03) Hit.137
2137
2136
일반 IP로 국가 판별하기 (wr.2017-12-01) Hit.177
2135
그누보드 [G5] 댓글(코멘트) 페이징 (up.2017-12-01 06:32) Hit.188
2134
2133
2132
2131
2130
2129
2128
2127
MySQL sql_mode (up.2017-11-26 04:25) Hit.231
게시물 검색
 
 
상호: 해피정닷컴 대표:정창용 사업자등록번호:119-05-36414 (08394) 서울시 구로구 디지털로 242 한화비즈메트로1차 1502호
전화: 070-7600-3500 팩스:02-865-3528 개인정보관리:정창용 mail@happyjung.com 에스크로확인
개인정보취급방침
COPYRIGHT 2001~2017 해피정닷컴. All rights reserved. 통신판매신고:2014-서울구로-0074
 
모바일 버전으로 보기