現在、Posix システム用の C++ で独自のサーバーを作成しています。構築済みサーバーを実際にどのように使用すべきかについて誰かが何かを言う前に、私はビジネス関連のあらゆる目的で構築済みサーバーを使用していることに注意してください。このプロジェクトは完全に学習体験です。
このシステムで、サーバー側のスクリプトと静的ホスティングをサポートすることを望みます。最も重要なサーバー側スクリプト言語である PHP のサポートを含めようとすると、問題が発生します。
標準の PHPには、着信要求に関する情報へのアクセスを提供する定義済みの変数がいくつか用意されています。また、特定の方法でリクエストとやり取りする標準のHTTP 関数も提供します。php://input
さらに、ファイル名を使用してリクエストとレスポンスのボディに対して IO 操作を実行し、php://output
それぞれ適切なソケットとパーミッションを参照することが可能であると想定されています。
これらすべての変数を定義し、ラッパー スクリプトの先頭にこれらすべての関数を自分で実装してinclude
から、同じコンテキストでユーザーのスクリプトを実行するために使用できることはわかっていますが、それは面倒です。また、実際のリクエストソケットのファイル記述子にマップする方法php://input
やマップする方法もわかりません。php://output
PHPインタープリターについてはよくわかりません。必須の要求データ (ユーザーエージェント、INET アドレス、メソッド、URI、バージョン、ヘッダー、ソケットファイル記述子、およびおそらく私が忘れているもの) を PHP インタープリターに提供して、ネイティブ定義にアクセスできるようにする方法はありますか?これらの変数と関数の実装? それとも、サーバーの作成者がこれらを自分で定義して実装するのが標準的な方法ですか?
最も重要なのは、これらを自分で実装する必要がある場合、正しいファイル記述子とアクセス許可php://input
にどのようにマップすればよいでしょうか?php://output
みんなありがとう。どんな助けでも大歓迎です。