ホームページ >バックエンド開発 >PHPチュートリアル >PHP 5.4 組み込み Web サーバー_PHP チュートリアル
PHP はスクリプト言語であり、PHP ファイルを分析して実行するには PHP インタープリターが必要です。 Web リクエストを処理する CGI として PHP を使用する場合、PHP を何らかの Web サーバー (最も一般的には Apache または IIS に統合) に組み込む必要があります。これは、PHP を使用する前に、Apache または IIS をインストールし、それらを正しく構成する必要があることを意味します。および PHP 統合パラメータ。この設定は標準化されており、ドキュメントは非常に充実していますが、Apache と PHP の統合をインストールするときに、依然として問題が発生することがよくあります。さらに、単純な PHP 機能をテストしたいだけで、そのために Apache サービスをインストールして開始したくない場合もあります。目的。 。
しかし、公式ドキュメントによると、この組み込み Web サーバーは開発とテスト専用であり、運用環境での使用は推奨されません。このサーバーはリクエストを順番に受け入れて処理するため、リクエストを同時に処理できないためです。
この内蔵 Web サーバーは非常に使いやすく、次のコマンドを実行するだけです:
リーリーこれでアクセスできるようになります。この方法で開始した後、デフォルトの Web サービス ディレクトリは、コマンドが実行される現在のディレクトリになります。現在のディレクトリを使用したくない場合は、-t パラメータを使用して指定する必要があります。
例 #1 Web サーバーを起動する
リーリー端末出力情報:
リーリーhttp://localhost:8000/ および http://localhost:8000/myscript.html アドレスをリクエストした後、ターミナルは次のような情報を出力します。
リーリーリーリー
リーリーリーリー
この例では、画像のリクエストは対応する画像を返しますが、HTML ファイルのリクエストには「PHP へようこそ」と表示されます。 リーリー
";
<span><span>$ php -S localhost:8000 router.php </span></span>
例 #4 判断是否是在使用内置web服务器
通过程序判断来调整同一个PHP路由器脚本在内置Web服务器中和在生产服务器中的不同行为:
<span class="comment">// router.php </span><span> </span>
<span><span>$ php -S localhost:8000 router.php </span></span>
这个内置的web服务器能识别一些标准的MIME类型资源,它们的扩展有:.css, .gif, .htm, .html, .jpe, .jpeg, .jpg, .js, .png, .svg, and .txt。对.htm 和 .svg 扩展到支持是在PHP 5.4.4之后才支持的。
例 #5 处理不支持的文件类型
如果你希望这个Web服务器能够正确的处理不被支持的MIME文件类型,这样做:
<span class="comment">// router.php </span><span> </span>
<span><span>$ php -S localhost:8000 router.php </span></span>
如果你希望能远程的访问这个内置的web服务器,你的启动命令需要改成下面这样:
例 #6 远程访问这个内置Web服务器
<span><span>$ php -S 0.0.0.0:8000 </span></span>
这样你就可以通过 8000 端口远程的访问这个内置的web服务器了