Linux WEB

특정 웹 사이트의 페이지를 외부사이트에서 링크하여 사용하는 경우는 대부분 사전 허락이 된 경우이지만 그렇지 않은 경우 불필요한 부하가 많이 발생하여 심할 경우 서버 자체가 다운되는 원인이 될 수 도 있습니다.

그와 같은 사태를 방지하기 위한 예방은 /usr/local/apache/conf/extra/httpd-mpm.conf 파일의 가상호스트 설정에서 간단히 해결할 수 있습니다.


다음은 abc123.co.kr 이라는 홈페이지가 있다고 가정한 상황의 가상 호스트 설정 예시입니다.


[httpd-mpm.conf]

<VirtuaHost 192.168.0.201>

    ServerAdmin webmaster@abc123.co.kr

    DocumentRoot /home/abc123/www

    ServerName example.co.kr

    ServerAlias www.abc123.co.kr.com

SetEnvIFNoCase Referer "abc123.co.kr" link_allow

    <FilesMatch "\.(gif|jpg)$">

        Order allow,deny

        allow from env=link_allow

        #deny from all

    </FilesMatch>

</VirtualHost>


위에서 진하게 표시된 부분이 외부 링크를 막는 설정입니다.


SetEnvIFNoCase Referer "abc123.co.kr" link_allow

이것은 변수를 설정하는 것으로 대소문자구분없이 referer(이전 방문 url 값)에 abc123.co.kr 이 들어가 있는 부분만 link_allow 라는 변수에 할당합니다.


<FilesMatch "\.(gif|jpg)$">

    Order allow,deny

    allow from env=link_allow

    #deny from all

</FilesMatch>

이 부분은 확장자가 .gif 또는 .jpg 로 끝나는 파일명에 대하여 허용 여부를 설정하는 것으로 위에서 설정한 link_allow의 변수에 해당하는 경우만 허용하겠다는 의미입니다.



정리하자면, 현재 이 웹사이트의 도메인은 abc123.co.kr이며 *.gif 또는 *.jpg 이미지 파일들에 대하여 abc123.co.kr 이라는 도메인이름이 들어가 있지 않은 referer에 대한 외부의 무단링크를 허용하지 않겠다는 설정입니다. 따라서, abc213.co.kr 웹사이트 자체에서 링크하여 사용하는 것은 얼마든지 가능하지만 외부의 웹사이트에서 abc123.co.kr*.gif 또는 *.jpg 파일의 무단 링크는 모두 차단됩니다. 이를 응용하면 다른 파일들에 대해서도 외부의 무단링크 차단 설정을 할 수 있습니다.

번호 제목 글쓴이 날짜 조회 수
63 아파치 특정폴더에 암호걸기 호스트웨이 2012.12.28 1529
62 PHP 컴파일시 에러 메세지가 나오는 경우 조치방법-2 호스트웨이 2012.12.20 491
61 PHP 컴파일시 에러 메세지가 나오는 경우 조치방법 호스트웨이 2012.12.14 2863
60 Ubuntu 아파치 웹서버에서 index.php 다운로드 창이 뜰 경우 호스트웨이 2012.12.13 1653
59 Symbolic link not allowed or link target not accessible 에러 발생 시 호스트웨이 2012.11.16 2210
58 CentOS6 64bit openssl 설치시 에러 조치사항 호스트웨이 2012.11.02 1555
57 [php] 세션 유지시간 설정하기 호스트웨이 2012.10.25 8061
56 Apache 재시작시 세션 끊어짐 현상 호스트웨이 2012.10.12 4616
55 apache 구동시 "파일 크기 제한을 초과함 $HTTPD -DSSL" 에러메시지 출력에 대한 해결방법 호스트웨이 2012.10.11 973
54 failed to open stream: Too many open files in 에러메시지 출력 시 해결방법 호스트웨이 2012.10.03 1087
53 httpd-2.4 설치하기 호스트웨이 2012.09.27 11051
52 아파치 실행시 libphp5.so 에러 호스트웨이 2012.09.14 9635
51 apache internal dummy connection 로그 생성 방지하기 호스트웨이 2012.09.06 12474
50 SSL 패스워드 삭제 하기 호스트웨이 2012.09.05 16093
49 Apache Max Client 값 수정 호스트웨이 2012.08.31 12765
48 Nginx 설치 호스트웨이 2012.08.31 10311
47 nginx - redirect 설정 호스트웨이 2012.08.24 12995
46 CentOS 6.3 에 apache, php, mysql, phpmyadmin(LAMP) 설치하기 #2 호스트웨이 2012.08.07 10742
45 CentOS 6.3 에 apache, php, mysql, phpmyAdmin(LAMP) 설치하기 #1 호스트웨이 2012.08.07 13999
44 PHP 사용 시 특정함수 사용제한 하는 방법 호스트웨이 2012.08.03 7538