2014-10-14 3 views
0

와일드 카드 도메인을 만들려면 the link을 따르고 있습니다. 이제 m.mysite.com은 mysite.com으로 리디렉션됩니다. 하지만 다른 버전의 사이트를 표시하고 싶습니다. 그래서 m.mysite.com은 mysite.com과 다를 것입니다. 내 모바일 버전은 htdocs/mobile 폴더에 저장됩니다.PHP로 m.mysite.com 모바일 사이트를 만드는 방법은 무엇입니까?

그래서

if (array_shift((explode(".",$_SERVER['HTTP_HOST']))) == 'm'){ 
    include("mobile".$_SERVER['PHP_SELF']); 
    die(); 
} 

을 시도 문제는 내가이 포함에서 Get 변수를 포함 할 수 없습니다. 따라서 URL이 m.mysite.com/read.php?id=1 인 경우 부품 ID = 1이 누락됩니다.

어떻게해야합니까?

참고 :이 질문은 각 사용자의 기기에 따라 다른 사용자를 다른 사이트로 리디렉션하는 방법과 관련이 없습니다. 그러나 이것은 다른 하위 도메인을 가진 다른 버전을 보여주는 두 사이트를 설정하는 방법입니다.

답변

0

이 방법 중 하나는 사이트에서 어떤 유형의 장치 (예 : PC, 태블릿, 휴대 전화)를 사용하고 있는지 감지하고 CSS 파일을 적절하게로드하는 클래스를 다운로드하는 것입니다. 나는이 수업을 몇 번 사용했고 제대로 작동하는 것 같다.

https://code.google.com/p/php-mobile-detect/

여기에서 클래스를 구축 할 수 있으며 어떤 방법으로 당신을 제발 수정합니다.

+0

감사합니다. 하지만 난 그냥 CSS를 수정하고 싶지 않아. html도 변경해야합니다. – user2335065

0

해결책 :

는 동일한 루트 디렉토리에 두 개의 폴더를 넣습니다. 첫 번째 폴더는 다른 콘텐츠가 포함 된 mysite.com으로 매핑되고 두 번째 폴더는 다른 콘텐츠가 포함 된 m.mysite.com으로 매핑됩니다.

이렇게하면 동일한 웹 서버에서 서로 다른 콘텐츠로 두 도메인에 쉽게 액세스 할 수 있습니다. 간단하게이 작업을 수행 할 두 가지 방법이

+0

감사합니다. 하지만 같은 문제가 존재합니다 ... 올바른 폴더에 파일을 포함하면서 get 변수를 포함 할 수 없습니다. – user2335065

+0

@ user2335065 wurfl을 사용하면 장치 정보를 가져 오는 데 사용 중입니다. 이 기능을 사용하면 모바일 장치에서 쉽게 차이를 표시하고 이에 따라 콘텐츠를 표시 할 수 있습니다. –

+0

그러나 문제는 모바일 장치를 구별 할 수있는 경우에도 올바른 콘텐츠를 적절하게 표시하는 방법을 모르겠습니다. – user2335065

0

....

먼저 모바일을 감지하고이 코드

<?php 
$agent = $_SERVER['HTTP_USER_AGENT']; // Put browser name into local variable 

if (preg_match("/iPhone/", $agent) OR preg_match("/android/", $agent)) { //Detect Mobile Device(You Can Add More Mobile User Agent) 
// Send Mobile User To Their Site 
header("location: mobile.php"); //ypu can also reirect to a folder or subdomain 
} 
?> 

을 두 번째 방법이있다하여 여분의 폴더로 리디렉션 할 수 있습니다 ... 색인에이 코드를 삽입해야합니다 ...

<?php 
$agent = $_SERVER['HTTP_USER_AGENT']; // Put browser name into local variable 
if (preg_match("/iPhone/", $agent) OR preg_match("/android/", $agent)) { //Detect Mobile Device(You Can Add More Mobile User Agent) 
include'mobile.php'; // mobile version 
} 
else{ 
include'pc.php'; // dekstop version 
} 
?> 
관련 문제