2012-09-15 4 views
-2

이 작업을 수행하는 데 엄청난 양의 코드를 사용했습니다. 내 서버 포트 80에 포맷되지 않은 입력이 있는데 파일에 기록해야합니다. 어떻게해야합니까?원시 입력 포트 80

+1

은'write (fd, buf, sizeof (buf)); 충분합니까? –

답변

1

확인이 코드는, 나는, $ var에가 그대로 기록 할 때, 당신이 그것을

ob_start(); 
readfile("php://input"); 
$var = ob_get_clean(); 
0

으로 아무것도 할 자유롭게 입력을 저장합니다 POST 요청에서 원시 입력을 얻기 위해 이것을 사용 파일에 뭔가가 있으면 웹 프로그래밍 언어를 사용하면 안됩니다. 대신 C++ 또는 C#을 사용하여 포트를 모니터링하고 파일의 스트림을 기록하십시오 ..

1

PHP는 원시 입력에 대한 액세스 권한을 부여하지 않습니다. 가장 가까운 데이터는 php://input 또는 $HTTP_RAW_POST_DATA이지만 HTTP 헤더 (헤더 다음)에만 액세스 할 수 있습니다. 또한 "포맷되지 않은"입력은 PHP가 처리하기 전에 웹 서버에서 구문 분석 오류를 발생시킵니다.

모든 트래픽을 기록해야하는 경우 적절한 HTTP가 아닐 수도 있습니다. 대신 방화벽이나 웹 서버의 기능을 찾아야합니다.

관련 문제