웹모아
웹모아[가입] 로그인 / 회원가입   검색     


  
일반팁
 

fsockopen을 이용한 웹 접속 [1]
2008-04-25 14:56:31 댓글:(0)   조회:5841
 



1. fsockopen?

 

PHP에서 fsockopen() 함수는 TCP/UCP 소켓 연결을 가능하게 합니다.

저는 여태껏 웹(HTTP,WWW)만을 대상으로 사용했으나 다른 용도로

혹은 다른 프로토콜로도 접속할수 있을것입니다.

 

fopen()은 단순한 파일이나 URL로 연결 가능하지만 한계가 있습니다.

막연히 한계?라고 하기는 애매한데...

fopen()이 단순한 웹 페이지를 읽어 들이는데 사용된다면

fsockopen()은 유저가 링크를 클릭하고 웹 서핑하듯이 사용할수

있다고 생각하시면 됩니다.

 

fsockopen() 으로는..

로그인이 필요한 곳에서 로그인을 할수 있습니다.

파일을 업로드 하거나 게시판에 글을 쓸수 있습니다.

메일을 보낼수도 있고...

해당 서버에 정상 적으로 접속이 되었는지 헤더를 통해 확인할수 있습니다.

(얘길 하고보니 당연히 할수 있는 것들이네요)

 

물론 웹 이라는 전제가 없다면 훨씬 더 다양하게 사용할수 있습니다

fopen()으로 이런 기능을 구현할수 없을까? 라고 한다면



fsockopen()으로 해결이 가능할 것입니다.

 

 

 

2. 사전 지식.

 

깊이 파고 들자면 상당히 피곤해 지고.. 적당히 알아둬야 할것들이

있습니다.

 

* HTTP(Hypertext Transfer Protocol)

 - fsockopen 으로 웹 접속시에 HTTP 헤더가 사용됩니다.

 - 각각 사용되는 헤더들이 어떤 뜻인지라도 파악하면 피 와 살이 될것입니다.

 - RFC-2068 HTTP1.1 을 참고하세요.

 

* 파일 관련 함수

 - fputs 또는 fwrite , fgets 또는 fread , feof, fclose...

 

* 정규표현식

 - 웹 페이지를 읽어 들일때 꼭 필요한 부분만 쓰고자 할때 사용합니다.

 - 문자열 관련함수로도 가능합니다만 심플하고 한번에 해결할수 있는



    정규표현식이 상당히 도움이 됩니다.

 - 접속시에 생성되는 쿠키를 읽어들일 때에도 사용합니다.

 

 

 

3. 그밖에...

 

사실 PHP 메뉴얼에 나온 fsockopen 부분을 보면 여기서 더 이상 다룰

내용이 없을 정도로 많은 소스들이 올라와 있습니다.

 

그중에는 폼을 통한 전송(글쓰기) , 파일업로드, 메일 전송,

WHOIS 조회, 쿠키와 리퍼러/헤더의 사용 까지 나와 있습니다.

 

하지만 충분히 숙달된... 혹은 메뉴얼을 보는 습관이 없는 프로그래머라면

소스를 보더라도 응용에는 상당한 삽질이 필요할수 있습니다.(저 처럼..)

 

그렇기에 이런 내용을 다루려고 생각한 것이고...

일단 응용을 해보면 아주 재미 있는(?) 일들까지 할수 있는걸 알수 있습니다.

 

. 


[이전글]  fsockopen을 이용한 서버 동작 체크
[다음글]  단어링크


 
댓글쓰기는 회원(로그인 하신분) 이상 가능합니다.


 댓글 (0)

  
일반팁
페이지: 1 / 10   

 php 한글 영어 일어 한자 구분 방법
열람:2113   2021.04.12


 중복 글등록을 방지하는 간단한 팁
열람:14469   2017.05.21


 이전 페이지 돌아가기 예제소스 코드보기
열람:3262   2017.03.14


 현재페이지 파일명 구하기
열람:6136   2016.12.25


 반응형 웹에서 발생할 수 있는 시각적 요소의 크기 조절 문제
열람:8292   2016.07.12


 php 한글(UTF-8) 자르기
열람:4588   2015.07.09


 php header를 utf-8 로 바꾸기
열람:4298   2015.05.25


 게시판에 파일 첨부 갯수가 20개로 제한되는 경우 - php
열람:4149   2013.10.07


 영문 대소문자 변환
열람:4330   2013.09.17


 mime_type 알기
열람:4334   2010.10.26



[1]  [2]  [3]  [4]  [5]  

복수단어 검색은 공백(space)로 구분해 주세요.




 
최근 글 [손님]
 
인기 글 [손님]
[깊은연못] 24시간 Classical Radio