ホームページ >バックエンド開発 >PHPチュートリアル >Java SEを使用して単純なHTTPサーバーを作成するにはどうすればよいですか? JSP をサポートしたい場合、ASP または PHP をどのように改善する必要がありますか?そうでない場合、これを実現できる他の言語はありますか?
これは私が考える方法です。JSP、ASP、および PHP を解析するために複数のコンパイラーを作成するのは非現実的です。そのため、私が構築したサーバーは、動的 Web ページ要求を検出すると、その要求を IIS に転送します (要求が ASP の場合)。同様に、JSPの場合はTOMCATに、PHPの場合はApacheに転送され、上記サーバーで解析されて返された静的コンテンツが受信されてクライアントのブラウザに返されます。では、この転送機能を Java で実装するにはどうすればよいでしょうか?実装できない場合、他の言語でも実装できるでしょうか?
<code class="language-coffee-script"><span class="nv">server = </span><span class="nx">httpService</span><span class="p">.</span><span class="nx">createServer</span><span class="p">()</span>
<span class="nx">server</span><span class="p">.</span><span class="nx">on</span> <span class="s">'http request'</span><span class="p">,</span> <span class="nf">(req, res)-></span>
<span class="nv">req_ext = </span><span class="nx">req</span><span class="p">.</span><span class="nx">require_url</span><span class="p">.</span><span class="nx">split</span> <span class="sr">/\.[asp|php|jsp|do]/i</span>
<span class="k">switch</span> <span class="nx">req_ext</span>
<span class="nx">case</span> <span class="s">'php'</span><span class="o">:</span>
<span class="nx">res</span><span class="p">.</span><span class="nx">send</span> <span class="nx">os</span><span class="p">.</span><span class="nx">execute</span> <span class="s">'php req.require_url'</span>
<span class="nx">case</span> <span class="s">'asp'</span><span class="o">:</span>
<span class="nx">res</span><span class="p">.</span><span class="nx">pip</span> <span class="nx">http</span><span class="p">.</span><span class="nx">require</span> <span class="s">'IIS server...'</span>
<span class="nx">case</span> <span class="s">'do'</span><span class="p">,</span> <span class="s">'jsp'</span><span class="o">:</span>
<span class="nx">res</span><span class="p">.</span><span class="nx">send</span> <span class="nx">http</span><span class="p">.</span><span class="nx">require</span> <span class="s">'Tomcat server...'</span>
<span class="nv">default:</span>
<span class="nx">res</span><span class="p">.</span><span class="nx">send</span> <span class="nx">file</span><span class="p">.</span><span class="nx">read</span> <span class="s">''</span> <span class="k">if</span> <span class="nx">file</span><span class="p">.</span><span class="nx">exist</span>
</code>