2017-02-22 1 views
0

을 금지하는 내가htaccess로 URL이

RewriteCond %{THE_REQUEST} /(\/-p-\.html)+(\?slave_id\=\d{1,6})?(\&osCsid\=\w{1,26})? [NC] 
RewriteRule^- [F] 

으로 시도했지만 작동하지 않습니다

http://www.domain.est/-p-.html?slave_id=15265&osCsid=6j0ltvo8d9i8h30koahqusvua7 

같은 특정 URL로 만든 모든 요청을 차단해야합니다. 내가 틀렸어?

감사

답변

0

이 처리하는 것이 더 쉽습니다 너무 더 강력해야 버전입니다 :

RewriteEngine on 
RewriteCond %{REQUEST_URI} ^/-p-\.html$ [NC] 
RewriteCond %{QUERY_STRING} slave_id=[0-9]{1,6} 
RewriteCond %{QUERY_STRING} osCsid=[0-9a-z]{1,26} 
RewriteRule^- [F] 

참고 : 패턴과 일치하는 쿼리 인수가 절대적으로 정확하지 않지만 충분히 견고해야한다 거의 모든 상황 ...이 들어


는 HTTP 서버를 작동하는 모듈이 활성화되어야 재 작성, 산부인과 대담하게. 이 규칙은 http 서버 호스트 구성 또는 동적 구성 파일 (.htaccess)에서 작동합니다. 이러한 동적 구성 파일을 사용하기로 결정한 경우 호스트 구성의 AllowOverride 지시문을 사용하여 파일 해석이 ​​가능하도록주의해야하며 파일은 http 호스트 구성 DocumentRoot 폴더에 있어야합니다.


그리고 일반 힌트

: 당신은 항상 동적 구성 파일 ("htaccess로")를 사용하는 대신 HTTP 서버의 호스트 구성 안에 같은 규칙을 배치하는 것을 선호한다. 이러한 파일은 오류가 발생하기 쉽고 디버깅하기가 어렵 기 때문에 서버 속도가 느려집니다. 그것들은 당신이 호스트 구성 (정말로 싸구려 호스팅 서비스 제공자를 읽음)을 제어하지 못하거나 자신의 재 작성 규칙을 작성하는 것에 의존하는 응용 프로그램을 가지고있는 경우에만 마지막 옵션으로 제공됩니다 (명백한 보안 악몽입니다)).

+0

감사합니다. 일은 잘합니다. – Saxcbr