2012-05-20 4 views
0

저는 Wordpress에 대한 보안 강화를 위해 .htaccess 규칙을 사용하고 싶습니다. 때 기본적으로, 연결을 금지 할 :.htaccess를 사용하여 참조자를 기반으로 액세스를 제한 하시겠습니까?

  • 사용자 에이전트는
  • 참조 자 문자열이 몇 가지 선택의 PHP 파일에
  • 참조 자 문자열 내 도메인에서 아닙니다 비어 비어
  • 나 '

다음 코드를 작성하십시오. 나는 올바른 길을 가고 있는가? 그렇지 않다면 문제를 해결하기 위해 무엇을해야하는지 제안하십시오. 고맙습니다!

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteCond %{HTTP_REFERER} ^$ 
    RewriteCond %{HTTP_USER_AGENT} ^$ 
    RewriteCond %{REQUEST_URI} wp-comments-post\.php* [NC] 
    RewriteCond %{REQUEST_URI} wp-admin\.php* [NC] 
    RewriteCond %{REQUEST_URI} wp-login\.php* [NC] 
    RewriteCond %{HTTP_REFERER} !.*example.com.* [NC] 
    RewriteRule . - [R=403,L] 
</IfModule> 
+0

당신은 몇 개의'[OR]'를 추가해야한다고 생각합니다. 일부 소프트웨어 및 프록시는 리퍼러 헤더를 제거합니다. – Gerben

답변

0

좋아, 나는 그것을 알아 냈다. 나는이 작동 생각 조각을 마련 할 수 있었다 :. 내가 로그인 아니에요 새 브라우저 창/탭을 사용하여 http://tambnguyen.com/wp-admin/에 액세스 할 수 없습니다처럼

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteCond %{REQUEST_URI} wp-comments-post\.php* [NC,OR] 
    RewriteCond %{REQUEST_URI} wp-admin\.php* [NC,OR] 
    RewriteCond %{REQUEST_URI} wp-login\.php* 
    RewriteCond %{HTTP_REFERER} !.*tambnguyen.com.* 
    RewriteRule . - [R=403,L] 
</IfModule> 

것 같습니다 내가 클릭 할 수있는 로그인 할 수있는 비밀 링크. 또한 일단 로그인하면 아무런 문제없이 http://tambnguyen.com/wp-admin/을 방문 할 수 있습니다.