본문 바로가기

카테고리 없음

아파치 리다이렉션 작업 (RewriteCond )

728x90

<IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_URI} ^/임의폴더명/
        RewriteRule ^.*$ https://aaaaaaaaaaaaaa.com 
</IfModule>

 

 

아래는 임의 조건 리스트 

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(aaa\.co\.kr)                       // aaa.co.kr로 들어오는 모든 url 
RewriteCond %{REQUEST_URI} !^/pop/.*$                           // 특정 폴더 제외
RewriteCond %{REQUEST_URI} !^/bbs/logout.php                 // 특정 폴더 내 특정 파일 제외
RewriteCond %{REQUEST_URI} !^/bbs/login.php
RewriteCond %{REQUEST_URI} !^/bbs/login_check.php
RewriteCond %{QUERY_STRING} !^bo_table=test             // request 쿼리 스트링에서 bo_table이 test인것 제외
RewriteRule ^(.*)$ http://aaa.co.kr/test/ [R,L]                 // 위의 제외조건을 충족하는 url 빼고 모두 리다

 

 

아래는 파라메터.

www 없는 주소로 자동 이동하기 (mod_rewrite)

이 글에서는 mod_rewrite를 사용하여 www 없는 주소로 자동 이동하는 방법을 알아본다.

왜 필요한가?

검색엔진은 서브도메인은 본래 도메인과 별개의 것으로 인식한다. 만약 www 붙인 URL와 붙이지 않은 URL을 혼용해서 사용할 경우, 검색엔진에서 하나의 글을 중복 문서로 여길 가능성이 있으므로 둘 중 하나의 도메인만 사용하는 편이 SEO에 유리하다.

따라서 이를 위해 www로 접속했을 경우 www가 없는 도메인으로 리다이렉트 하도록 만드는 편이 좋다.

www 없애기

아파치 환경설정 파일( httpd.conf), 비트나미 워드프레스라면 httpd-prefix.conf 파일을 수정하면 URL 재작성 규칙(Rewrite Rule)을 적용할 수 있다.

RewriteEngine On 밑에 다음과 같이 작성한다. www.mysite.com -> mysite.com

# www.mysite.com -> mysite.com
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]

(참고) www 붙이기

먄약 이와 반대로 하고 싶다면(www를 붙인 도메인을 사용하고 싶다면) 다음과 같이 작성한다. mysite.com -> www.mysite.com

# mysite.com -> www.mysite.com
#RewriteCond %{HTTPS} !=on
#RewriteCond %{HTTP_HOST} !^www\..+$ [NC]
#RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
728x90