2014-07-08 3 views
1

내 웹 사이트는 virtualmin 컨트롤 패널의 가상 서버에서 실행 중입니다. .htaccess 파일에 리디렉션 규칙을 추가하는 동안 현재 302 임시 URL을 리디렉션하고 있습니다. 여기301 영구적 리디렉션을 사용하여 www가 아닌 ​​URL로 www가 아닌 ​​URL로 리디렉션하는 방법은 무엇입니까?

.htaccess 파일 구성입니다 :

Options -Indexes 
RewriteEngine On 
RewriteBase/

RewriteRule ^index.html$ index.php 
RewriteRule ^(([a-zA-Z0-9-_]+)?)\.html$ page.php?pagId=$1 
RewriteCond %{http_host} !^example.com$ [nc] 
RewriteRule ^(.*)$ https://example.com/$1 [r=301,nc,L] 

이 친절하게 내가 제대로 (301) 영구적으로 리디렉션 리디렉션 그래서 내 웹 서버에 만들 필요가 변경 알려

?

내 도메인의 모든 요청을이 URL 형식 인 "https://example.com/"으로 리디렉션하고 싶습니다.

답변

0

내가 문제를 해결 한 두 가지 재 작성 규칙을 작성하여. >

 <VirtualHost*:80> 
     . 
     . 
     RewriteEngine on 
     RewriteCond %{HTTP_HOST} !^example\.com$ [NC] 
     RewriteRule^https://example.com%{REQUEST_URI} [R=301,NE,L] 
     </VirtualHost> 


     <VirtualHost*:443> 
     . 
     . 
     RewriteEngine on 
     RewriteCond %{HTTP_HOST} !^example\.com$ [NC] 
     RewriteRule^https://example.com%{REQUEST_URI} [R=301,NE,L] 
     </VirtualHost> 

지금은 일하고>

  Options -Indexes 
     RewriteEngine On 
     RewriteBase/
     RewriteCond %{HTTP_HOST} !^example\.com$ [NC] 
     RewriteRule^https://example.com%{REQUEST_URI} [R=301,NE,L] 
     RewriteRule ^index\.html$ index.php [L,NC] 
     RewriteRule ^([\w-]+)\.html$ page.php?pagId=$1 [L,NC,QSA] 

그리고 /etc/httpd/conf/httpd.conf 파일 파일 각 가상 호스트에 하나는

나는 htaccess로 파일에 동일하게 유지 벌금.

희망이 있으면 도움이 될 수 있습니다.

0

당신은 사용할 수 있습니다

Options -Indexes 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} !^example\.com$ [NC] 
RewriteRule^https://example.com%{REQUEST_URI} [R=301,NE,L] 

RewriteRule ^index\.html$ index.php [L,NC] 

RewriteRule ^([\w-]+)\.html$ page.php?pagId=$1 [L,NC,QSA] 
+0

도움을 주신데 감사하지만 아직도 302 리디렉션이 작동하지 않습니다. – user128296

+0

브라우저에 입력 한 URL과 작동하지 않은 URL은 무엇입니까? 이 .htaccess는 어디에 있습니까? – anubhava

+0

감사 Anubhava 문제가 해결되었습니다. – user128296

관련 문제