웹마스터 팁

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를 만들려면 여기를 참고하세요.

제목 글쓴이 날짜
외부페이지에서 로그인 폼 구현하기 컴퓨터매니아 2013.09.09
[주옥시리즈] 타이틀 제어 애드온 socialskyo 2013.09.09
[주옥시리즈] [1.7.4] 로그인창 옆에 신규 쪽지 수 보여주기 [3] socialskyo 2013.09.09
추천 취소 기능 만들기 [5] file Summer 2013.09.11
게시글 추천 아이피 가져오기 file Stellar 2013.09.12
Apache .htaccess 작성요령 [10] 컴매냐 2013.09.19
스케치북 게시판에 로그인/로그아웃 버튼 만들기 [1] Arp. 2013.09.22
XE 로만든 앱 + 푸쉬기능 구현하기 (안드로이드) [53] file Xiso 2013.10.16
Content 확장위젯2 에서 권한설정 안되던 버그 xe1.7 garnecia 2013.11.18
[수정]알림센터 Lite에 메일발송 기능을 추가하기 [11] file 매실茶 2013.11.25
소셜 XE 페이스북 로그인 에러 해결 방법 file 신평 2013.11.30
새로운 쪽지 유무에 따라 이미지 변경하는 법 [2] 멀티비타민 2013.12.16
나만의 익명게시판에서 닉네임 확인하는 방법(꼼수라고 밝힙니다.) [5] 착한부산남자 2014.01.03
스케치북 게시판 사용시 "내용을 입력해주세요"라고 뜨면서 댓글 입력이 안될경우 체크해봐야할 사항 [1] socialskyo 2014.01.07
1.5 -> 1.7 업글중 백지상태 부분!! una_nampyeon 2014.02.03
스윙브라우저 유저분들 필독. [10] KSG2013 2014.02.08
글쓰기를 클릭하면 띄워지는 테두리 없는 예쁜 팝업 띄우기 core. 1.7.4 [4] file 마음의빈자리 2014.02.11
nginx 에서 서브도메인 사용시 로그인유지방법 [3] garnecia 2014.02.26
로그인 안하면 코멘트 볼 수 없게 스킨 수정하는 법 [3] W.O 2014.03.23
VB.NET에서 XE로그인 연동하기.[내용추가] [3] AppSeedKorea 2014.03.26