2012-09-12 2 views
0

Apache에 익숙하지 않아서 재 작성 규칙 구문을 이해하기가 매우 어렵습니다. 여기 특정 URL에 대해 다시 쓰기 규칙을 사용하여 https를 사용하도록 설정합니다.

내 설정이다 : 를 내가 mydomain.com 에서 워드 프레스 MU 사이트가 나는 주차 한 도메인 사이트 개발, site2.com

내가 원하는 무엇 mydomain.com를 가리키는 : 내가이 URL을 원하는 http://mydomain.com/wp-login.php 동일한 주소로 리디렉션하지만 https를 먼저 사용하십시오. 이 작업을 수행하는 방법에 대한 몇 가지 자습서를 보았지만 문제가 있습니다.

내 문제 : 나는 그들이 도메인을 주차하고 효과적으로 같은 htaccess로 코드를로드하기 때문에

#RewriteCond %{HTTPS} !=on 
#RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

같은 것이 또한 HTTPS 버전으로 내 다른 사이트 리디렉션이 사용하는 경우; 인증서는 mydomain.com 전용이므로 인증서 오류가 발생합니다.

mydomain.com에서 페이지를 보호해야하지만 wp-login.php 페이지에서만 보안을 설정해야합니다.

mydomain.com/wp-login.php

mydomain.com/somecracp/wp-login.php

mydomain.com : 또 다른 문제는,이 페이지 URL에 이동할 수있는 IE이다 /wp-login.php?xys=5653

mydomain.com의 도메인 이름과 wp-login.php를 URL의 어디에서나 감지하는 정규식이 필요합니다. 그런 다음 https를 강제해야합니다. 누구든지 제게 코드를 만들어 주시겠습니까?

업데이트 : 문제의 일부를 발견했을 수 있습니다. 로그인 페이지 자체가 일부 리디렉션을 시도하고있는 것 같습니다. 사이트 http://mysite.com/wp-admin의 admin 섹션에 액세스하면 로그인하지 않았 음을 감지합니다. 그 다음 로그인 페이지로 리디렉션하지만 이렇게 같은 말에 redirect_to 쿼리 문자열을 추가 : 이전에 시도

당신이 성공적으로 로그인하면이 관리자 섹션로 리디렉션 할 수 있도록이 작업을 수행 할 것으로 보인다
http://mydomain.com/subdomain/wp-login.php?redirect_to=http%3A%2F%2Fmydomain.com%2Fsubdomain%2Fwp-admin%2F&reauth=1 

액세스. 이 "redirect_to"와 그 뒤에 오는 것은 사용자가 로그인하면 리디렉션되는 URL입니다.

왜 그런지는 자세히 알지는 않겠지 만 위의 URL을 덮어 쓸 수있는 방법이 있습니다. rediret_to 쓰레기가없는 mydomain.com/wp-login.php로 이동 하시겠습니까?

답변

1

이 시도 :

RewriteCond %{HTTP_HOST} ^(www\.)?mydomain.com$ [NC] 
RewriteCond %{HTTPS} !on 
RewriteRule wp-login.php https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,QSA] 

RewriteRule 검사 정규식 부분은 요청 wp-login.php의 인스턴스가 존재하는지 확인하고 존재하는 경우, HTTPS로 리디렉션한다.

+0

이것이 작동하지 않았습니다. – Mucker

+0

@Mucker 사실, 다른 도메인을 잊어 버렸습니다. 편집을 참조하십시오. –

+0

그게 내가 지금까지 가지고있는 것보다 훨씬 잘 작동합니다.이제 올바르게 로그인하고 로그 아웃합니다. 그래도 또 다른 문제가 발생했습니다. 위의 업데이트를 읽은 다음 수정 방법을 알고 있는지 확인하십시오. 감사합니다 – Mucker

0

rewriteCondition은 HTTPS가 꺼져 있는지 확인하고 URI는 WP-login.php를 포함 요청 후 리디렉션합니다

RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} wp-login.php [NC] 
RewriteRule https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

보십시오.

+0

이 작동하지 않았다 – Mucker

관련 문제