| 태그 '외부링크'에 해당되는 글 1건 |
| 외부링크 막고, 로그인하여 다운 가능하도록 하기. |
Tech - https://ohyung.net/641 (YMD: 12/04/15 10:31)
우선 외부링크를 막기 위해서는 디렉토리에 .htaccess 파일을 만든뒤 아래와 같이 세팅..
물론 < FileMatch 을 붙여서 써줘야함.
SetEnvIFNoCase Referer "http://YOUR_DOMAIN1" pass
SetEnvIFNoCase Referer "http://YOUR_DOMAIN2" pass
< FilesMatch "\.(gif|jpg|jpeg|png|bmp|zip|tar|gz|rar|txt|iso|GIF|JPG|JPEG|PNG|BMP|ZIP|
TAR|GZ|RAR|TXT|ISO|mp3|MP3|wmv|WMV|sws|SWF|exe|EXE)$">
Order deny,allow
deny from all
allow from env=pass
#allow from all
< /FilesMatch>

#400 - Bad request
#401 - Authorization Required
#403 - Forbidden
#404 - Wrong page
#500 - Internal Server Error
ErrorDocument 403 /forbidden_error.php

위와 같이 해두면 jpg 혹은 zip 파일등이 외부 링크가 걸렸을 경우 외부 사이트에서 표시가 되지 않습니다.
또한 http://YOUR_DOMAIN1/data/test.jpg  같은 주소창에서 다이렉트 접속시 forbidden_error.php로 연결이 되게 됩니다.

여기서 forbidden_error.php에서 로그인 하도록 정의.
그뒤 링크나 바로 넘겨서 다운받을 수 있도록 코딩 해두면 됩니다.
(자세한 설명은 항상 생략합니다; )

저같은 경우 자료실의 암호를 2가지로 지정
1번의 경우 정상적으로 자료실을 이용할 수 있도록 정의
2번의 경우 다운로드 링크용으로 사용.

2번 설명
다이렉트 접속 -> forbidden_error.php -> 로그인하도록 정의 후 $_SERVER['REQUEST_URI']; 등으로 환경 변수 넘김 -> 로그인이 되었다면 링크 하여 다운로드 가능하도록함.+ 세션 지우기 -> 로그인 실패시 아무것도 출력되지 않도록함


그냥 오늘 코딩 하면서 생각 정의용으로 작성해봄.
| 이 포스트에 대한 이용규약 |
Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 라이센스 에 따라 이용하실 수 있습니다.
This work is licensed under a Creative Commons Attribution 2.0 Korea LicenseLink in a new window.

| 이 글과 태그로 연관된 글 |

| 트랙백 |
트랙백 주소 :: https://ohyung.net/rserver.php?mode=tb&sl=641