* nc リッスンモード [#l896b3a9]
** 目的 [#g128d31f]
リッスンモードで起動し、HTTPリクエストを受け付け、HTTPレスポンスを返す。
** 概要 [#g128d31f]
ncをリッスンモードで起動し、PHPによるHTTPリクエストを受け付け、HTTPレスポンスを返す。
** 手順 [#w3b338fb]
*** サーバ側:ncをリッスンモードで起動する [#qf415eb3]
以下のコマンドを実行し、HTTPリクエストを待つ。
nc -l localhost 8001
*** クライアント側:PHPでHTTPリクエストを実行する [#o9ab71f0]
以下のPHPプログラムを実行する。
<?php
$r = new HttpRequest('http://localhost:8001/', HttpRequest::METH_GET);
try {
$r->send();
if ($r->getResponseCode() == 200) {
print "DEBUG: \n" . $r->getResponseBody();
}
} catch (HttpException $ex) {
echo $ex;
}
print "\n---\nDONE.\n";
*** サーバ側:HTTPリクエストを確認し、HTTPレスポンスを返す [#xf6b47db]
以下のようなリクエストが確認できる。
GET / HTTP/1.1
User-Agent: PECL::HTTP/1.7.1 (PHP/5.3.8)
Host: localhost:8001
Accept: */*
以下のようなレスポンスを(コピーアンドペーストなどで)返す。
HTTP/1.1 200 OK
Date: Thu Mar 29 02:12:28 JST 2012
Content-Type: text/html
<html>
<body>
TEST
</body>
</html>
CTRC+C
*** クライアント側:レスポンスを確認する [#c4260e85]
*** クライアント側:HTTPレスポンスを確認する [#c4260e85]
DEBUG:
<html>
<body>
TEST
</body>
</html>
---
DONE.