2013-10-01 3 views
0

모바일 버전이 특정 웹 사이트에 있는지 확인하고 싶습니다. 내 이해에 우리는 모든 웹 사이트에 http://m.example.com/에있는 모바일 버전이 있는지 확실하지 않으므로 CURL() 요청을 통해 테스트하고 있습니다. 여기에 내가 그 일을하고 어떻게 :웹 사이트의 모바일 버전을 확인하는 방법은 무엇입니까?

* I send mobile browser headers in curl request, this returns contents of 
the returning URL. 
* If it has a mobile version, then it would return contents of a mobile version site. 
* I then check if the content includes @media keyword, if it exists then I assume it has a mobile version. 

문제는 CSS를로드 외부 나는 더 CURL을 보낼 것이다 경우()이며, 그것이 훨씬 더 느린하게 할뿐만 아니라, CSS 파일을 요청합니다. 내 문제에 대한 구체적인 해결책이 있습니까? 아니면이 프로세스를 조금 더 향상시킬 수 있습니까?

도움을 주시면 감사하겠습니다. 감사.

답변

3

XY Problem과 같은 비트의 냄새가 나는 접근 방식의 문제는 단순히 신뢰할 만하지 못한다는 것입니다. CSS 미디어를 사용

1.이 방법은 두 가지이다와

문제를 쿼리 :

웹 사이트에는 모바일 웹 사이트에 대한 많은 선택을 가지고 있습니다. 우선, 모든 CSS 파일과 <link> 선언을 스캔해야합니다. 두 번째로, 사이트는 자바 스크립트를 사용하여 페이지에 동적으로 스타일 시트를 도입 할 수 있습니다. JavaScript 파서가 없기 때문에 cURL을 사용하여 볼 수 없습니다. 당신이 그 결과를 볼 수없고, 그래서 (클라이언트 측) 자바 스크립트를 사용하거나 화면 너비 다시

자바 스크립트를 사용하여 스니핑 스니핑

2. 브라우저는이 자바 스크립트가 실행되지 얻을 않습니다.

3. 브라우저 서버 측 코드

음을 사용하여 스니핑, 나는 당신이 당신의 컬을 요청 모바일 사용자 에이전트 문자열을 사용하려고, 그리고 당신을 소요 위치를 확인할 수도 있겠죠,하지만이 모든 방법 해킹되고 신뢰할 수 없다.

4. 페이지가 얻을 - 이동 (@Quentin에 신용) @Quentin이 코멘트에서 언급 한 바와 같이

하는 페이지가 클라이언트에 대한 추가 검사없이 친화적 인 이동 될 수에서 친화적 인 이동 될 수있다/서버 측 (미디어 쿼리가없는 반응 형 디자인, 단순히 백분율 기반 값 사용).

+0

각 시나리오를 명확히 설명해 주셔서 감사합니다. 글쎄, 난 다른 옵션을 찾을 수 없습니다,이 문제에 대한 해결책이 있습니까? –

+0

4. 휴대 전화 전용 케이스가 없어도 모바일 친화적 인 웹 사이트가있을 수 있습니다. – Quentin

+0

@Quentin 예, 가장 기본적인 예를 들어 보았습니다. 건배. 이 문제에 대한 해결책이있을 수 있지만 실제 솔루션이 아닌 해킹이 될 수 있습니다. 이 기능이 필요한 이유를 묻고 싶습니다. – Mark

관련 문제