로그인

게시글

외부의 xml 파일을 로딩하지 못하는 경우 처리 방법

www.moayo.net

.htaccess 파일에 추가 php_flag allow_url_fopen on 로딩페이지소스 ini_set('user_agent', $_SERVER[HTTP_USER_AGENT]); simplexml_load_file("http://도메인1.com/loding.xml"); xml파일을 로딩할때 사용하는 함수입니다 simplexml_load_file("loding.xml"); loding.xml 을 로딩해서 사용할수 있습니다 그런데 외부 주소의 xml 파일을 로딩할때 안되는경우가 있습니다 simplexml_load_file("http://도메인.com/loding.xml"); 이런식으로 http://도메인.com/loding.xml 외부 주소를 로딩할때 안되는경우가 있습니다 이때 외부에 있는 파일을 가져올수 있는지 확인을 해봐야 합니다 만약 사용할수 없게 되었다면 .htaccess 파일에 php_flag allow_url_fopen on 추가하면 사용가능해집니다 이랬는데도 아되는경우가 있습니다 예를 들어 simplexml_load_file("http://도메인.com/loding.xml");주소는 되는데 simplexml_load_file("http://도메인1.com/loding.xml");주소가 되지 않을때가 있습니다 모든 소스와 http://도메인.com/loding.xml http://도메인1.com/loding.xml 주소의 xml 도 동일한데 안될때는 http://도메인1.com 도메인에서 차단되는경우가 있습니다 이때 차단이유가 user_agent 부분때문인경우가 있습니다 클라이언트 브라우저 정보를 나타내는 부분인데 예를 들어 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36 이러한 정보입니다 이정보가 재대로 넘어가지 않을경우 정상처리 되지 않는경우가 있습니다 이부분을 처리하기위해선 ini_set('user_agent', $_SERVER[HTTP_USER_AGENT]); simplexml_load_file("http://도메인1.com/loding.xml"); 이렇게 넘기거나 ini_set('user_agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36'); simplexml_load_file("http://도메인1.com/loding.xml"); 직접값을 넣어 넘기는 방법이 있습니다 다시한번 정리하면 외부 xml파일이나 크롤링이 안될때 1).htaccess 파일에 php_flag allow_url_fopen on 추가 2)로딩하는 페이지에 ini_set('user_agent',$_SERVER[HTTP_USER_AGENT]) 를 추가해 user_agent 부분을 재정의 합니다 이렇게 해도 안되는경우 아이피,모듈등을 통해 막은 경우도 있긴합니다

#프로그램 #php #htaccess #xml #크롤링 #simplexml_load_file #allow_url_fopen #XML로딩 #user_agent

w3schools

www.w3schools.com

w3schools을 소개합니다. w3schools 은 다양한 프로그램 소스를 공부할수 있는 사이트 입니다. w3schools의 장점은 소스와 실행되는 결과같은 바로 볼수 있다는 것이 장점입니다. 웹관련 소스가 궁금한 경우 검색하면 잘 나옵니다. 그러나 소스를 적용했을때 잘 되는지에 대해서는 장담하지 못합니다. 열심히 적용해 봤는데 소스가 잘못된경우 또는 버전이 맞지 않아 사용할수 없는 경우가 있기 때문입니다. 물론 올린사람이 의도적으로 틀린 소스를 올리는 것은 아니지만 시간이 흐름에 따라 틀린 소스가 되기도 합니다. 그러다 보니 적용하기전 정상적인 소스인지 먼저 확인 해봐야 하는데 w3schools 에서는 Try it Yourself 를 통해 미리 확인해 볼수 있습니다. 또 다른 장점으로 CSS관련 정보를 많이 얻을수 있다는 것입니다. 개인적으로 CSS관련 부분이 궁금한 경우 자주 활용하는 사이트입니다. 일반적으로 CSS의 특정 기능이 궁금하면 인터넷에 검색하여 정보를 얻습니다. 그러다 보니 체계적인 정보를 얻기보다는 산발적인 정보를 얻게 되는데 w3schools 에서는 체계적으로 관련정보가 잘 정리되어 있습니다. 적용 예시 뿐아니라 연관된 스타일들까지 다양하게 확인해볼수 있습니다. 그러기에 CSS를 공부하기에는 더할나위없이 좋은 사이트입니다. 메뉴구성은 HTML, CSS, AJVASCRIPT, SQL, PYTHON, PHP등으로 구성되어 있어 다양한 서비스를 이용할 수 있습니다 웹관련 프로그램 소스가 궁금하시다면 w3schools를 활용해 보시기 바랍니다. 자세한 정보를 원하신다면 https://www.w3schools.com 주소를 참고 하시면 더많은 정보를 확인 하실 수 있습니다.

#프로그램 #php #자바스크립트 #CSS #HTML #SQL #PYTHON #W3Schools #웹개발학습 #코딩예제