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 apache - mod_url 설치 호스트웨이 2015.09.18 10287
62 Linux LVS 사용하기 호스트웨이 2015.09.16 10288
61 PHP 컴파일시 에러 메세지가 나오는 경우 조치방법 호스트웨이 2012.12.14 10311
60 Symbolic link not allowed or link target not accessible 에러 발생 시 호스트웨이 2012.11.16 10543
59 Apache-Tomcat Multi Instance 설정 file 호스트웨이 2015.05.28 10705
58 Apache Log 관리 방법 (Logrotate) 호스트웨이 2015.09.17 11178
57 PHP 속도 향상을 위한 eAccelerator 설치 호스트웨이 2012.06.15 11264
56 PHP 사용 시 특정함수 사용제한 하는 방법 호스트웨이 2012.08.03 11502
55 httpd.pid 파일 오류 메시지 (20014) 호스트웨이 2015.09.12 11910
54 PHP 컴파일시 /usr/bin/ld: cannot find -lltdl 오류 호스트웨이 2012.07.13 12545
53 Linux log 분할 방법 (logrotate) 호스트웨이 2012.04.06 12587
52 Apache 재시작시 세션 끊어짐 현상 호스트웨이 2012.10.12 12738
51 mod_evasive를 이용한 웹 DDoS 방어 호스트웨이 2014.08.19 13104
50 아파치 실행시 libphp5.so 에러 호스트웨이 2012.09.14 13523
49 APM 및 OS 버전 확인 하는 방법 호스트웨이 2012.03.30 13982
48 CentOS 6.3 에 apache, php, mysql, phpmyadmin(LAMP) 설치하기 #2 호스트웨이 2012.08.07 14202
47 httpd-2.4 설치하기 호스트웨이 2012.09.27 14436
46 PHP-5.3 버전 이상에서 Deprecated 에러 발생시 처리 방법 호스트웨이 2012.06.22 14714
45 Nginx 설치 호스트웨이 2012.08.31 14896
44 phpize를 이용하여 모듈 추가 file 호스트웨이 2012.03.15 15582