2016-06-17 2 views
-1

.htaccess를 사용하여 URL을 다시 쓰지만 백엔드 즉 PHP가 이전 URL을 읽도록 할 수 있습니까? 여러 사용자가 사용할 수있는 플랫폼을 구축했습니다. 각 사용자는 하위 도메인을 통해 자체 인스턴스를 가져옵니다.URL을 다시 작성하지만 서버에서 이전 URL을 읽게했습니다.

user1.domain.com 
user2.domain.com 
user3.domain.com 

나는 사용자가 자신의 도메인 이름을 사용할 수있게하고 싶습니다. 즉

usersDomainName.com points to user1.domain.com 

이 작동합니다. 여기에 문제가있는 곳이 있습니다.

내 시스템에는 각 사용자마다 고유 한 구성 파일이 있습니다. 파일은 그들이 만든 하위 도메인 즉, user1으로 명명됩니다. $ _SERVER [ 'SERVER_NAME'] URL을 읽고 하위 도메인 이름을 가져 와서 적절한 구성 파일을 찾습니다. 즉, url이 user1.domain.com 인 경우 시스템은 user1.config.php를 조회합니다.

어떻게 나는 usersDomainName.com를 읽도록 URL을 마스크 htaccess로 사용할 수 있지만, PHP는 내 문제에 대한 대답은에 Serverfault에서 줄리의 Pelletier에서 온이 user1.domain.com

+0

는'user1.domain입니다 .com' 이전에는 웹 서버에 도달하기도 전에 이미 웹 서버가 그 일을 처리하기에는 너무 늦었습니다. – Sherif

+0

'usersDomainName.com'은 성공적으로 'user1.domain.com'을 가리 킵니다. 문제는 없습니다. 문제는 내가 php가'user1.domain.com'이라는 실제 경로를 인식하도록하고 싶다. – Jason

+0

당신이 "당신이 의미하는 바가 무엇인지 모르겠다."_ PHP가'user1.domain.com'_이라는 실제 경로를 인식하기를 원합니다. ". 그것은 도메인이 아니라 경로입니다. 이 시점에서 당신이 해결하려고하는 문제를 실제로 이해하지 못했을 가능성이 있습니다. 아마도''userDomainName.com'이''user1.domain.com' '을 가리키고 있다는 것에 대해 질문을 명확히 해보십시오. – Sherif

답변

0

읽습니다. __You이 사실은 DNS 수준에서 user1.domain.com``에 usersDomainName.com` 점 그냥 브라우저가 이미 호스트를 결정한 것을 의미한다 '것을 .__ 것을 할 수없는

if (!array_key_exists($_SERVER['SERVER_NAME'], $clients)) { 
    header('Location: http://domain.com/invalidclient'); 
    exit; 
} 

$_SERVER['SERVER_NAME'] = $clients[$_SERVER['SERVER_NAME']];