QueryString을 사용하여 Apache Mod-Lewrite 리디렉션 도메인 이름을 리디렉션합니다

StackOverflow https://stackoverflow.com/questions/1824944

문제

우리는 영국 전역에 많은 지점이있는 고객이 있습니다. 그들의 지점에는 자체 도메인 이름이있는 자체 사이트가 있습니다. 클라이언트는 방문하는 부품 구축 시스템이 있습니다.

www.client.com/aboutus.php?id=branchId

해당 특정 지점에 대한 미국 정보 페이지를 표시합니다. 내가 필요로하는 것은 특정 도메인을 분지에 매핑하는 방법입니다 (현재는 모두 DB에 저장되어 있음).

www.client.com/aboutus.php?id=4

지도

www.branchid4.com/aboutus.php
도움이 되었습니까?

해결책

이것은 나를 위해 작동합니다. 도메인이 단일 일반 규칙 세트와 함께 작동 할 수 있는지 확실하지 않음 (예 : ID를 잡은 다음 재 작성에서 사용하십시오). 그렇지 않으면 URL 당 마지막 3 줄을 반복해야합니다.

Options +FollowSymLinks 
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^(www.)?client.com$
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /aboutus\.php\?id=4\ HTTP/
RewriteRule ^.*$ http://www.branchid4.com/about.php? [R=301,L]

다른 팁

호스트 이름에서 중요한 부분을 꺼내 스크립트로 전달할 수 있습니다.

RewriteEngine on
RewriteCond %{QUERY_STRING} !(^|&)branchName=
RewriteCond %{HTTP_HOST} ^www\.([^.]+)\.com$
RewriteRule .* $0?branchName=%1 [L,QSA]
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top