묻고답하기
외부링크안되게 설정하는법좀
2015.06.14 16:19
관리자모드에서 파일업로드 설정보면
파일외부링크도 안되게끔 아니오로 했는데도 다른사이트에 이미지 링크가 되구요..
어떻게 해야 제한이 걸리나요?
윈도우서버2012 입니다. .htaccess 수정방법중
여기 6번따라해도 안되더라구요...
고수님들 방법좀..ㅠㅠ
댓글 13
-
불금
2015.06.14 16:56
-
ehii
2015.06.14 18:09
.htaccess 파일은 아파치서버에서 쓰는 파일입니다.
IIS에서 쓰려면 재작성 모듈을 설치해서 .htaccess파일을 불러오거나 규칙을 만드셔야 합니다.
https://www.xpressengine.com/tip/22871709
해당하는 부분만 별도로 .htaccess 파일로 작성하여 저장한 뒤 iis관리자에서 url재작성 > 규칙 가져오기로 불러오세요.
짧은 주소 적용을 위해 XE기본 폴더에 있는 .htaccess 불러 왔던 경우에
.htaccess을 따로 작성하지 않고 기존.htaccess에 내용 추가하여 또 불러오면 중복으로 규칙이 쓰여지므로
별도로 .htaccess파일로 작성하여 불러와야 합니다.
이전에 .htaccess파일을 불러온적이 없으면 XE기본 폴더에 있는 .htaccess 에 팁내용을 추가하여 한방에 불러와도 됩니다.
아니면 외부링크 차단 규칙을 직접 추가하셔도 됩니다.
규칙 추가 > 인바운드 규칙 > 빈규칙에서
1. 이름은 아무거나..
2. 패턴과 일치, 정규식, 패턴에는
2-1 외부링크 전부를 차단하려면 ^.*
2-2 특정파일(.jpg .jif 등등)을 차단하려면 \.(jpg|jpeg|jif|png|bmp|tif)$
3. 조건에는 {HTTP_REFERER} 일치하지 않음 ^$ {HTTP_REFERER} 일치하지 않음 ^http(s)?\:\/\/(www\.)?사이트주소\.com.*$
4. 작업에는 작업유형 >사용자 지정응답 > 상태코드 403, 이유 오류설명 Fobbiden
또는 작업유형 > 요청중단
-
죽방망이
2015.06.15 12:50
답변 감사합니다.^^ ^http(s)?\:\/\/(www\.)?사이트주소\.com.*$ 이부분에서
www 가 안들어가는 https://사이트.net인데 위에 www는 상관없나요? 어떻게 넣어야 되나요.ㅠㅠ 조언좀부탁드립니다.
-
ehii
2015.06.15 14:24
정규식에서 ?는 있거나 없거나 둘 다 적용한다는 뜻입니다.
(s)? 나 (www\.)?는 쓰시거나 안쓰셔도 무방합니다
^$
^http(s)?\:\/\/hello\.dple\.net.*$
두 가지 적용하시면 되겠어요.
-
죽방망이
2015.06.15 14:41
답변 감사드리면 좋은 정보 가르켜 주셔서 넘 감사드립니다. 항상 좋은 하루보내시기 바랍니다.^^
-
죽방망이
2015.06.15 23:46
사이트는 패턴테스트하니깐 제대로 된건 맞는데
적용을 하니 외부링크허용이 되더라구요. 그래서 아래처럼 해보니 외부이미지 허용도 안되고
제 사이트 이미지도 허용안되는 비극이.ㄷㄷㄷ
젤처음 요렇게 셋팅해도 안되더라구요.ㅠㅠ
머가 문제인지 여쭤봐도 될련지요.ㅠㅠ
-
ehii
2015.06.16 00:18
1,3 방법은 문제가 없어 보입니다.
지금 어떤 상태로 되어 있는지 모르겠는데......
다른 홈페이지에서 <img src=http://hello.dpple.net/files/attach/images/139/56f789aaad73740974bb73469a4715f1.png /> 태그를 삽입한 게시글을 작성해 보시고 확인해 보세요.
외부 링크 차단은 본인 홈페이지 서버에 저장된 그림파일 등을 다른 사이트에서 img태그등으로 소스만 따와서 표시하는 것을 차단하는 것 입니다.
브라우저의 주소창에 이미지 주소를 직접 입력하거나, 마우스 우클릭으로 이미지를 내려 받는 것까지 원천적으로 차단하지는 못합니다. 이런 차단을 하면 본인페이지에서도 이미지가 아예 안보이겠죠.
-
죽방망이
2015.06.16 00:35
아 그렇네요 확인 해보니 img src 태그는 안먹히게 되어있네요.
그림을 마우스로 긁어서 복사하기해서 타 사이트에 갖다붙히면 나오는데
이런걸 차단 할려면 방법이 없을까요? 제서버에서만 허용하고 다른사이트퍼가면 막을방법이..ㅠㅠ
-
ehii
2015.06.16 00:59
그림을 내려받기 한 뒤 다시 타사이트에 글작성하면서 첨부하여 올리는 것을 막을 수는 없습니다.
그림과 글을 긁어서 복사 & 붙여넣기 하면 위의 차단이 적용됩니다. 소스가 같기 때문입니다.
죽방망이님이 자신의 사이트의 글을 긁어서 다른 사이트에 붙여넣기 하면서 확인하실 때
그림이 보였다면 브라우저의 캐쉬에 저장된 것이 나타나는 것입니다.
다른 컴퓨터로 확인해 보시면 차단이 되어 안보일 겁니다.
-
죽방망이
2015.06.16 01:21
밤늦게 답변달아주셔서 감사드립니다.
테스트 해보면 이미지 주소에 img src태그사용해 타사이트해보면 노출이 안되는데
마우스로 긁어서 복사후 붙여넣기 하면 타사이트에 실려버립니다. 같은 소스일텐데... 말씀대로 캐쉬 문제 인것 같긴한데 캐쉬삭제하거나, 다른 컴터로 해도 동일해서요. 혹시 한번 봐주실래요? 지금 사진보기메뉴에서 게시글중에 이미지 긁어서 타사이트 복사해서 글쓰기가 되는지.ㅠㅠ
-
ehii
2015.06.16 01:46
조건 입력에서 {http_referer}를 대문자인 {HTTP_REFERER}로 적용해 보세요.
확인해보니 http를 소문자로 쓰면 적용이 안되네요.
작업 > 요청중단 이나 403 forbidden으로 설정하신 건 맞죠?
지금은 외부링크차단이 적용되고 있지 않네요.
-
죽방망이
2015.06.16 09:35
소중한 지식 공유해주셔서 감사합니다. 대문자로 하고 바로 적용이 되네요^-^ 좋은 하루보내세요
-
ehii
2015.06.17 01:28
해결하셨다니 다행입니다.
한가지 더 말씀드리자면
구글,네이버등 검색로봇의 크롤링이나, 검색사이트를 경유한 접근을 막지 않기를 원하시는 경우
이들 사이트도 예외 적용해 주시면 됩니다.
위의 조건에서와 같은 방식으로 아래처럼 추가하시면 됩니다.
{HTTP_REFERER} 일치하지 않음 ^http(s)?\:\/\/(www\.)?naver\.com.*$
{HTTP_REFERER} 일치하지 않음 ^http(s)?\:\/\/(www\.)?daum\.net.*$
{HTTP_REFERER} 일치하지 않음 ^http(s)?\:\/\/(www\.)?google\.com.*$
{HTTP_REFERER} 일치하지 않음 ^http(s)?\:\/\/(www\.)?google\.co\.kr.*$
윈도우 서버라면 저 XE 내부에 있는 설정과 링크걸어주신 설정법이 먹히지 않아요.
https://help.maximumasp.com/KB/a738/using-url-rewrite-to-prevent-image-hotlinking.aspx
외부 이미지는 이문서 참고해보세요.