웹마스터 팁
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
-
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 어려워요 ㅜㅜ
제목 | 글쓴이 | 날짜 |
---|---|---|
외부페이지에서 로그인 폼 구현하기 | 컴퓨터매니아 | 2013.09.09 |
[주옥시리즈] 타이틀 제어 애드온 | socialskyo | 2013.09.09 |
[주옥시리즈] [1.7.4] 로그인창 옆에 신규 쪽지 수 보여주기 [3] | socialskyo | 2013.09.09 |
추천 취소 기능 만들기
[5]
![]() | Summer | 2013.09.11 |
게시글 추천 아이피 가져오기
![]() | Stellar | 2013.09.12 |
Apache .htaccess 작성요령 [10] | 컴매냐 | 2013.09.19 |
스케치북 게시판에 로그인/로그아웃 버튼 만들기 [1] | Arp. | 2013.09.22 |
XE 로만든 앱 + 푸쉬기능 구현하기 (안드로이드)
[53]
![]() | Xiso | 2013.10.16 |
Content 확장위젯2 에서 권한설정 안되던 버그 xe1.7 | garnecia | 2013.11.18 |
[수정]알림센터 Lite에 메일발송 기능을 추가하기
[11]
![]() | 매실茶 | 2013.11.25 |
소셜 XE 페이스북 로그인 에러 해결 방법
![]() | 신평 | 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]
![]() | 마음의빈자리 | 2014.02.11 |
nginx 에서 서브도메인 사용시 로그인유지방법 [3] | garnecia | 2014.02.26 |
로그인 안하면 코멘트 볼 수 없게 스킨 수정하는 법 [3] | W.O | 2014.03.23 |
VB.NET에서 XE로그인 연동하기.[내용추가] [3] | AppSeedKorea | 2014.03.26 |
와우~