2016-06-28 6 views
1

한 문자열을 건너 뛰기 I 다음 아파치 재 작성 규칙이 있습니다정규식

000-default.conf: RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

는 어떻게 변경할 것입니다 다음과 같은 문자열이 URL에있는 경우를 제외하고 모든 것을 허용하기 : tab=availability를?

+0

한다 RewriteCond .... –

+0

@MarcB 당신이 대답에 표시하시기 바랍니다 수 있습니까? – David542

답변

1

당신은 RewriteRule 그 자체로 부정을 사용할 수 있습니다

RewriteRule !tab=availability https://%{HTTP_HOST}%{REQUEST_URI} [L,NC,R] 

이 URI가 지정된 패턴을 포함하지 않는 모든 요청을 리디렉션합니다. 그러나 당신이

RewriteCond %{HTTPS} off 

가 리디렉션 루프를 방지하기 위해 추가 한 후 더 나은 .htaccess의 규칙 위에 사용하는 경우.

또한 당신은 지정된 패턴 어디QUERY_STRING는 다음 조건에 THE_REQUEST 변수를 사용 포함한 URL에 일치하지 않도록하려면 :

RewriteCond %{HTTPS} off 
RewriteCond %{THE_REQUEST} !tab=availability [NC] 
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,NC,R]