2011-08-14 8 views
5

今後、別のWebサーバーまたは書面によるサーバー経由でHTTPリクエストを処理したいと考えています。PHPとのウェブサーバーインターフェイスの仕組み

PHPにリクエストデータを正しく提供する方法を理解したいと思います。要求データは、PHPのハンドルは、その後の$ _SERVER変数などを埋めるために必要な追加のアクションを要求データを受信する方法、データをPHPに提供される方法

  • 、標準入力経由または何らかの形で他の
  • を提供する必要がありますどのような形で

  • +1

    あなたはPOSTまたはGETがどのように形成されているか尋ねますか? – Matt

    +0

    なぜそれをしたいですか? – seriousdev

    +0

    はい、どのように$ _SERVERデータが埋め込まれているか、htmlの生成に必要なすべてのもの。これに関する書籍、チュートリアル、Wiki、ドキュメントがあります。 :) – Somebody

    答えて

    4

    実際にはとても簡単です。 WebサーバーはCGI interfaceを通じてPHPと通信します。これは、環境変数の設定、PHPインタプリタの呼び出し、POST本体のstdinによるパイプ処理、そしてstdoutからのPHPレスポンスの読み取りを必要とします。

    は$ _SERVER変数を後処理PHPにしたよう:文書としてそれはかなり最小限ですが、それだけでPHP_SELFやPHP_AUTH_USERなどを構築しますマニュアルに記載されています。残りの部分はウェブサーバーによって提供されます(たとえば、すべてのHTTPヘッダーがHTTP_ * env変数に変換されます)。

    +0

    あなたのポストのCGIインターフェイスリンクが壊れていますか?良い答えをありがとう!私はすべてのリンクを掘り下げます。 – Somebody

    0

    Goはphpのソースコードをダウンロードし、mod_phpのコードを見てください。これは、CIで書かれています。