Programming/PHP2012.09.19 01:33

curl 을 이용하여 서버에 접속하여 정보를 받아 오고 있다.

하지만 https일 경우에만 아래와 같은 오류가 발생하고 있다.


Warning : curl_error(): 22 is not a valid cURL handle resource in


이 문제는 옵션만 하나 지정하면 해결된다.

curl_setopt($this->handle, CURLOPT_SSL_VERIFYPEER, false);

신고
Posted by 초프(초보 프로그래머)
Programming/PHP2012.08.23 18:39

작성한 php를 요청하는 header, body를 출력하는 테스트 코드입니다.

HTTP_METHOD 인 GET, POST, PUT, DELETE 의 내용을 출력하도록 하였습니다.

GET, POST는 PHP에서 지원하는 기능을 활용하였고

PUT, DELETE는 raw data를 출력하도록 하였습니다.




신고
Posted by 초프(초보 프로그래머)
Programming/PHP2012.08.23 18:20

php로 작성한 페이지를 누군가를 요청했다.

그 요청의 header, body 가 궁금한데... 어떻게 가져오지???


header의 값은

apache_request_headers()

을 이용해 배열로 가져 옵니다.


body의 값은

$HTTP_RAW_POST_DATA

을 이용해 문자열로 가져 옵니다.

신고
Posted by 초프(초보 프로그래머)
Programming/PHP2011.05.18 23:36
10년 이상 php를 조금씩 했지만 pear를 처음 설치해 봤다; 반성해야겠다;

wget pear.php.net/go-pear

라고 입력하면 설치 스크립트를 내려받고 go-pear 라는 파일이 생긴다.
go-pear 파일을 서버가 웹서버가 돌아가는 폴더 안에 넣고 실행하자.
실행하기 전에 파일 확장자를 붙여 줘야 한다.

mv go-pear go-pear.php

웹브라우저에서 다음과 같이 접속하자
http://localhost/go-pear.php

next
install 을 눌러주면 설치가 끝난다.




lynx 가 설치되어 있는 경우라면

lynx -source http://pear.php.net/go-pear | php

이와 같은 명령어를 사용해도 된다. 
신고
Posted by 초프(초보 프로그래머)
TAG Linux, Lynx, Pear, php
Programming/PHP2011.02.21 17:22
웹브라우저로는 잘 열리는데 프로그램 상에서 읽어오면 400 bad request 오류가 나는 경우가 있습니다.
http1.1 에서 get 또는 post로 값을 잘못 넘겼을때 발생한다고 합니다.
검색을 통해서 알아보니 Host : 헤더가 빠져서 그렇다고 했지만....
Host를 헤더에 넣어도 해결되지 않았습니다.

결국 찾은 것은  User-Agent 였습니다.

"User-Agent: ".$_SERVER['HTTP_USER_AGENT']

를 헤더에 추가하면 됩니다.



추가 
400 bad request 는 요청이 잘못되어 발생하는 경우 입니다.
정확한 해결방법은 각 서버에 따라 다 다릅니다.
어떤 요청을 원하는지 알아야 정확히 대응할 수 있습니다.
주로 parameter의 값이 없거나 잘못된 값일 경우 발생합니다.



신고
Posted by 초프(초보 프로그래머)
Programming/PHP2008.04.13 16:46
POST, GET으로 값을 받은후에 그 값으로 쿼리문을 작성할 경우 보안에 취약점이 생긴다.

이 취약점은 따옴표, 외따옴표 가 들어가면서 생기는 취약점 이므로 이것을 막아주면 된다.

MySql 같은 경우에는 mysql_real_escape_string() 을 사용하면된다.
신고
Posted by 초프(초보 프로그래머)
TAG MySQL, php, 보안