웹마스터 팁

RewriteEngine On

#1. 리퍼러 차단
SetEnvIfNoCase Referer "fillbest|bestyahoogamers|pirst|getfiles" ban
Deny from env=ban


#2. 프록시 차단
RewriteCond %{HTTP:VIA}                 !^$ [OR]
RewriteCond %{HTTP:FORWARDED}           !^$ [OR]
RewriteCond %{HTTP:USERAGENT_VIA}       !^$ [OR]
RewriteCond %{HTTP:X_FORWARDED_FOR}     !^$ [OR]
RewriteCond %{HTTP:PROXY_CONNECTION}    !^$ [OR]
RewriteCond %{HTTP:XPROXY_CONNECTION}   !^$ [OR]
RewriteCond %{HTTP:HTTP_PC_REMOTE_ADDR} !^$ [OR]
RewriteCond %{HTTP:HTTP_CLIENT_IP}      !^$
RewriteRule ^(.*)$ - [F]


#3. 디렉토리 브라우징 금지
Options All -Indexes


#4. phpinfo 실행시 아이디/비밀번호 입력
<Files phpinfo.php>
AuthName "phpinfo()"
AuthType Basic
AuthUserFile /path/to/.htpasswd
Require valid-user
</Files>


#5. HTTP 오류시 해당 문서 보여줌
ErrorDocument 400 /errorpage/400.html
ErrorDocument 401 /errorpage/401.html
ErrorDocument 403 /errorpage/403.html
ErrorDocument 404 /errorpage/404.html
ErrorDocument 405 /errorpage/405.html
ErrorDocument 500 /errorpage/500.html


#6. 자동으로 www 붙이기
RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301,NC]


#7. 이미지 외부링크 제한
SetEnvIfNoCase Referer "^http://(.*).domain.com/" locally_linked=1
SetEnvIfNoCase Referer "^http://(.*).domain.com$" locally_linked=1
SetEnvIfNoCase Referer "^http://domain.com/" locally_linked=1
SetEnvIfNoCase Referer "^http://domain.com$" locally_linked=1
SetEnvIfNoCase Referer "^https://domain.com/" locally_linked=1
SetEnvIfNoCase Referer "^https://domain.com$" locally_linked=1
SetEnvIfNoCase Referer "^https://(.*).domain.com/" locally_linked=1
SetEnvIfNoCase Referer "^https://(.*).domain.com$" locally_linked=1
<FilesMatch ".(gif|GIF|jpg|JPG|bmp|BMP|png|PNG|psd|PSD|ai|AI|tif|TIF|tiff|TIFF|pcx|PCX|wmf|WMF|emf|EMF|css|CSS)$">
Order Allow,Deny
Allow from env=locally_linked
</FilesMatch>


#이후는 XE 기본 Rewrite 기능, 이하 생략

 

1. 리퍼러 차단: 쓸데없는 스팸 리퍼러 등을 차단하여 로그에 기록되지 않게 합니다.

2. 프록시 차단: 이걸 쓰면 프록시 차단 애드온이 필요없습니다. (확인해보니 소스가 동일)

3. 디렉토리 브라우징 금지: 디렉토리 퍼미션이 777으로 되어있는 경우에도 안의 내용을 리스트로 볼 수 없게 합니다.

4. phpinfo 실행시 아이디/비밀번호 입력: HTTP Basic Authentication을 이용해서 phpinfo 파일을 보호합니다.

5. HTTP 오류시 해당 문서 보여줌: 모두 잘 아시는 ErrorDocument 기능입니다.

6. 자동으로 www 붙이기: 로그인이 풀리는 문제를 막아줍니다. 서버단에서 처리해주기 때문에 속도 저하가 없습니다.

7. 이미지 외부링크 제한: 내사이트를 제외한 다른 사이트에서 이미지를 무단으로 링크하는 것을 막아줍니다.

 

저는 일반적인 홈페이지에 사용되는 내용만 담은 것입니다. 저보다 더 좋은 htaccess를 만들려면 여기를 참고하세요.

제목 글쓴이 날짜
[주옥시리즈]글 목록을 조회수 별로 색상 지정하기 socialskyo 2013.09.09
[주옥시리즈]댓글 작성, 추천후 다운로드 받을수 있게 하기. socialskyo 2013.09.09
[주옥시리즈] [1.7.4] 로그인창 옆에 신규 쪽지 수 보여주기 [3] socialskyo 2013.09.09
[주옥시리즈] 배너 클릭시 포인트지급 모듈, Portal XE [1] socialskyo 2013.09.09
추천 취소 기능 만들기 [5] file Summer 2013.09.11
게시글 추천 아이피 가져오기 file Stellar 2013.09.12
에디터 비활성화 문제 해결했습니다! [2] 엘로이스 2013.09.13
XP + IE8 에서 갑자기 페이지 오류메시지가 뜰 경우 [1] file 다크진 2013.09.14
스케치북 게시판 목록 홀수 줄 에만 배경지정 [3] socialskyo 2013.09.14
영문 스팸 방지 [13] 스토리웨이 2013.09.16
모바일에서 스케치북 게시판 댓글 펼침이 안 될 때.... file 손자 2013.09.17
웹사이트 최적화 방법론 [4] 다크진 2013.09.17
Apache .htaccess 작성요령 [10] 컴매냐 2013.09.19
에디터 비활성화 오류시 점검해야 할것. [1] file 도라미 2013.09.20
[주옥시리즈] 에디터 컴포넌트, 이모티콘등 앞으로 빼기 [4] socialskyo 2013.09.21
템플릿 compile 오류가 날 때 Lansi 2013.09.22
스케치북 게시판에 로그인/로그아웃 버튼 만들기 [1] Arp. 2013.09.22
[주옥시리즈]댓글창에 배경 이미지 넣기 [3] file socialskyo 2013.09.22
빠른 글 쓰기 - 메인 페이지에서 글 쓰기 [1] file 윈컴이 2013.09.23
XML 쿼리 사용시 null 값일 경우 업데이트가 안 될 때 [1] Lansi 2013.09.27