내 사이트에 속하지 않는 도메인으로의 시각적 리디렉션을 막으려 고하고 있습니다. 승인 된 도메인 목록이있는 rewritemap을 참조하고 있습니다. 이것은 다음 scenerio를 제외하고 예상대로 작동합니다. 내 정규식은 첫 번째 targetPage = 두 번째 .com까지의 문자열을 캡처하고 있으므로 도메인을 캡처 할 수 있도록 첫 번째 .com에서 중지해야합니다.regex의 두 번째 인스턴스를 캡처하는 RewriteRule
규칙 :
URL이 박히는RewriteCond %{QUERY_STRING} ^(.*[&?]|)(url=|target=|targeturl=|targetpage=|redirecturl=)(https?)[\%A-Z0-9]*2F(.*\.com|.*\.net|.*\.org)/?.*$ [NC]
RewriteCond ${validDomains:%4} !validdomain
은 다음과 같습니다 https://mysite.domain.com/secure/SigninServlet?targetPage=https://mysite.domain.com/mysite/pages/msb/myAccount/correct.jsp?RNRedirectUrl=DSP&referrerUrl=https://mysite.domain.com/mysite/pages/msb/user/signinrn.jsp
반환 % 4 참조 값은 다음과 같습니다 mysite.domain.com/mysite/pages/msb/myAccount/correct.jsp?RNRedirectUrl=DSP&referrerUrl=https://mysite.domain.com
그때 .cim에 종료합니다 referrerUrl를 변경하는 경우 나는 단지 mysite.domain.com을 붙잡는다.
어떻게하면 정규식을 onl y가 아닌 첫 번째 도메인을 볼 수 있습니까?
RewriteCond %{QUERY_STRING} (^|&)(url|target|targeturl|targetpage|redirecturl)=(https?)[\%A-Z0-9]*2F([^&]*?\.(?:com|net|org)) [NC]
RewriteCond ${validDomains:%4} !validdomain
왜'사용하지 [A-Z0-9.]'도메인 이름 캡처 등 : – Wrikken