2011-08-13 2 views
2

"모든 곳에서"보였습니다.하지만이 부분을 파악할 수 없습니다.htaccess -> 모든 www를 www가 아닌 ​​페이지로, 한 페이지 만 ssl로 리디렉션해야합니다.

나는 나를 위해이 일을하기 위해 htaccess로 필요합니다 : www가 아닌 ​​모든 www가 요청

  1. 강제
  2. 는 또한 모든 페이지에 HTTP (비 SSL)하지만 하나를 강제로 요청하는 경우 I need ssl

또한이 사이트는 퍼머 링크를 사용하는 WordPress 사이트이기 때문에 htaccess 코드 덩어리를 Wordpress에 올려 놓았습니다. 그러나 어쨌든 모든 것이 잘 작동합니다. 단, SSL로 처리해야하는 페이지로 갈 때를 제외하고는 사이트의 루트로 리디렉션됩니다.

# Redirect from www to non-www 
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] 
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301] 

# Turn SSL on for secure-page 
RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} ^secure-page[/]?$ 
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] 

# Turn SSL off everything but secure-page 
RewriteCond %{HTTPS} on 
RewriteCond %{REQUEST_URI} !^secure-page[/]?$ 
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L] 

# BEGIN WordPress 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 

그래서 결과가

한다 RewriteEngine RewriteBase 에/:

  1. 어떤 WWW와 www가 아닌 ​​및 HTTP URL이 리디렉션됩니다

    이 내 코드는 모습입니다 non-www 및 http -> OK

  2. www 및 non-www 및 https URL (secure-page 제외)은 www가 아닌 ​​URL로 리디렉션됩니다. TP -> 확인
  3. 보안 페이지 URL이 사이트 루트로 리디렉션하고 왜 알아낼 수 없습니다 -> 확인

사람이 도와 주실 수 없습니까? 감사합니다.

답변

2
RewriteEngine On 
# Redirect from www to non-www 
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] 
RewriteCond %{REQUEST_URI} ^/secure-page[/]?$ 
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301] 


RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] 
RewriteCond %{REQUEST_URI} !^/secure-page[/]?$ 
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301] 



# Turn SSL on for secure-page 
RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} ^/secure-page[/]?$ 
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] 

# Turn SSL off everything but secure-page 
RewriteCond %{HTTPS} on 
RewriteCond %{REQUEST_URI} !^/secure-page[/]?$ 
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L] 

답을 업데이트했습니다.

+0

안녕하세요 아스맨, 답장을 보내 주셔서 감사합니다. 그러나 요청한 업데이트로도 http://example.com/secure-page/에 가면 여전히 http://example.com으로 리디렉션됩니다. –

+0

@Ettiene 나는 나의 대답을 편집했다! 나는 그것을 test.hkh.com에서 테스트 한 다음 필요에 맞게 값을 변경합니다! 그래서 나는 그것이 괜찮을 것이라고 생각합니다! – undone

+0

안녕 Aseman, 지금 일하는 것 같습니다. 감사 ! –

관련 문제