묻고답하기
html에 php를 불러들이는 방법.
2015.08.17 19:42
사이트 본문에 mp3파일이 첨부되어있을경우
jwplayer를 통해 본문에 플레이어를 출력하는데
소스보기를 통해 mp3의 첨부경로가 노출되는 문제가 있어서
modules/board/skins/sketchbook5/read.html안에
jwplayer를 불러들이는 소스를
jwplayer.php 를 만들어서
read.html 에 불러들이고 싶어서
read.html 에 있던 추가된 소스를 지우고
해당 부분에
{@ require_once($tpl_path."play.php");} 를 넣어주고
play.php에 같은 폴더에 업로드해서
read.html에 있던 내용을 넣어줬더니
{@ $AttachmentList = $oDocument->getUploadedFiles(); $attachment_loop = 0; $allow_extension = array('mp3', 'wav'); $replace_text_target = array("'", '"'); $replace_text_needle = array('��', '��'); }
이런식으로
소스값이 그대로 그냥 출력되는 문제가 있더라구요..
아무래도 XE의 함수들이 선언이 안되어서 그런 것 같은데 어떻게 해야할까요?
ps. 이렇게 php를 로드해도 결국 경로는 마찬가지로 노출될까요..?
php파일은 소스보기가 안되니까 노출이 안될 것 같은데.
댓글 5
-
꾸링
2015.08.17 20:00
-
꾸링
2015.08.17 20:01
근데 결과적으로 php결과값을 read.html에 뿌려줘서 마찬가지로 노출되네요 ㅠ_ㅠ
-
YJSoft
2015.08.17 21:01
브라우저에서 파일을 재생하려면 주소를 알아야 하기에, 주소를 노출시키지 않을 수 있는 방법은 없습니다.
타 사이트에서 사용하는 것이 문제라면, htaccess 등에서 리퍼러를 체크하여 차단시킬 수 있습니다. -
꾸링
2015.08.17 21:48
네 알아보니, client-side에서 실행되어야하기 때문에 숨기는 것 자체가 불가능하다고 하더라구요..
그래서 네이버처럼 1회성 URL을 사용하는 기술을 적용하여 대체해야한다고 결론을 얻었네요..
-
꾸링
2015.08.17 21:50
다만 소스보기를 통해
{
title: 'music so good.mp3',
sources: [{
file: http://co.kr/files/attach/images/30628/831/648/013/ca5dfd2bffe566928977af4550d7189c.mp3,
type: 'mp3'
}]
처럼 표시되는데
Fake 주소를 랜덤으로 마구자비로 넣어서, 직접 경로를 통해 재생하거나 다운로드를 막고싶은데
(막기보다는, 상당한 번거로움을 요구하도록 하여 포기하도록 만드는 방법..)
소스 보기를 통해서만 Fake 주소를 보여주도록 하는 방법은 어떻게 해야할까요..?
php 주석을 통해 넣어봤는데 소스코드에서는 표시가 안되네요..ㅠ
<include target="play.php" />
로 해결했습니다~@.@