웹마스터 팁
Apache .htaccess 작성요령
2013.09.19 08:04
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를 만들려면 여기를 참고하세요.
댓글 10
-
푸시아
2013.09.19 11:02
-
socialskyo
2013.09.20 18:39
와우!! 대박 이네요.
-
socialskyo
2013.09.20 18:46
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>
요건 사용하니까....제 사이트의 이미지도 못불러오네요...레이아웃도 깨지고.....제가 뭔가 문제가 있나 봅니다. -
socialskyo
2013.09.20 19:56
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>
요건 사용하니까....제 사이트의 이미지도 못불러오네요...레이아웃도 깨지고.....제가 뭔가 문제가 있나 봅니다. -
컴매냐
2013.09.21 04:39
domain.com을 @socialskyo 님의 사이트 주소로 수정 하셨나요?
-
socialskyo
2014.01.21 22:49
지금에서야 대답 하네요. ^^ 덕분에 모두 잘 되었습니다. 늦었지만 감사 드립니다.
-
착한부산남자
2013.09.21 14:58
제 xe는 따로 xe 폴더가 없어서
/www에 있는 .htaccess 상위에 위 코드를 삽입했는데 오류가 납니다.
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.Please contact the server administrator, postmaster@kbglove.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
-
컴매냐
2013.09.21 22:35
수정하였습니다. 감사합니다.
-
장_앙마
2014.06.18 10:37
고맙습니다.
-
태풍_님
2014.06.19 22:21
사이트가 2개 도메인을 파크해서 같이 이용하는데
예시로 domain.com/index.php를 domain.co.kr/index.php ( 뒤에다가 똑같이 domain.com/tip/22332567 라면 domain.co.kr/tip/22332567 이렇게 설정하는 방법 없을까요??
음.. htaccess 어려워요 ㅜㅜ
제목 | 글쓴이 | 날짜 |
---|---|---|
Apache .htaccess 작성요령 [10] | 컴매냐 | 2013.09.19 |
목록에서 이미지 팝업 이용하기 | Happyphp | 2014.06.19 |
include용 파일에는 닫는 php문이 없다? | YJSoft | 2014.04.14 |
레이아웃에 배경이미지 업로드 하고 적용시키기 [1] | 웹빌드ver2 | 2014.06.10 |
Windows 서버에서 XE 속도 대폭 개선 방법 [29] | StyleRoot | 2013.02.25 |
Google Public DNS 강제 Flush Cache 하기 | AJKJ | 2014.06.08 |
PHP에서 Socket.IO 서버로 요청 보내기 [3] | 이즈야 | 2014.06.01 |
윈도우7/8에서네임서버 운영 | POSTZI | 2014.06.08 |
XHTML 과 CSS 오류검사를 해주는 사이트 입니다. | 디테일 | 2014.06.07 |
회원정보에서 '서명' 수정이 반영되지 않을 경우 | Novelic | 2014.06.03 |
홈페이지에 접속한 장치의 너비 구하기 [3] | CosignStudio | 2014.05.28 |
익스플로러의 자동완성 기능 off 하기 [7] | WOWpc | 2001.10.23 |
스크롤바 색깔 바꾸는 스타일... [8] | 잔디 | 2001.01.05 |
[1초팁] Google Fonts의 폰트파일이 XE템플릿 문법으로 불러와지지 않을때 | mAKEkr | 2014.05.31 |
게시판 comment 스타일 수정 | 웹빌드ver2 | 2014.05.30 |
Mysql DB사용량 출력하기 [4] | 대류 | 2012.01.01 |
유저가 자신의 회원정보 전체를 공개/비공개 설정하게 하는 방법 [2] | sejin7940 | 2014.05.27 |
윈도에서 버츄얼박스 실행 시에 작업표시줄에 보이지 않게 하기 | hyun | 2014.05.26 |
사용자정의에서 날짜형의 경우, 달력의 년수 선택범위를 늘리는 방법 | sejin7940 | 2014.05.24 |
Draggable Captcha System for XE1.7.5 Member Module (QapTcha) [7] | 우진홈 | 2014.05.21 |
와우~