php は 2 種類の Web サーバーにデプロイできます: 1. Apache (Apache Software Foundation のオープンソース Web サーバー) は、マルチプラットフォームとセキュリティのため、ほとんどのコンピュータ オペレーティング システムで実行できます。広く使用されている; 2. nginx は、高性能 HTTP およびリバース プロキシ Web サーバーであり、「IMAP/POP3/SMTP」サービスも提供します。
このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、DELL G3 コンピューター
一般的に使用される Web サーバーphp は通常、次の 2 つのタイプです:
apache
nginx
LAMP (linux) apache mysql php ) と LNMP (linux ngnix mysql php) は、現在サーバー用に最も一般的に使用されている PHP 環境アーキテクチャです。
apache サーバー
Apache HTTP サーバー (Apache と呼ばれる) は、Apache Software Foundation のオープン ソース Web サーバーです。コンピュータのオペレーティング システム上で動作し、マルチプラットフォームとセキュリティ機能により広く使用されており、最も人気のある Web サーバー側ソフトウェアの 1 つです。 Perl/Python などのインタープリターをサーバーにコンパイルするためのシンプルな API を介して、高速で信頼性が高く、拡張可能です。
Apache は、人気のあるオープン ソースのクロスプラットフォーム Web サーバーであり、現存する Web サーバーの中で最も人気があります。
Apache HTTP サーバーは、NCSAhttpd サーバーから派生したモジュラー サーバーであり、多くの修正を経て、世界ナンバー 1 の Web サーバー ソフトウェアになりました。
広く使用されているほぼすべてのコンピュータ プラットフォームで実行できます。
Apache は NCSAhttpd サーバーに由来し、多くの修正を経て、世界で最も人気のある Web サーバー ソフトウェアの 1 つになりました。 Apache は「パッチだらけのサーバー」という意味の「パッチサーバー」の発音から来ており、フリーソフトウェアであるため、人々は常に新しい機能や特徴を開発し、元々の欠陥を修正しています。 Apache は、シンプルさ、高速性、安定したパフォーマンスが特徴で、プロキシ サーバーとしても使用できます。
当初は小規模または実験的なインターネット ネットワークにのみ使用されていましたが、その後徐々にさまざまな Unix システムに拡張され、特に Linux のサポートは非常に完璧です。 Apache には、SSL テクノロジーと複数の仮想ホストをサポートできるさまざまな製品があります。 Apache はプロセスベースの構造です。プロセスはスレッドよりも多くのシステム オーバーヘッドを消費するため、マルチプロセッサ環境には適していません。そのため、Apache Web サイトを拡張する場合は、通常、プロセッサを増やすのではなく、サーバーを追加するか、クラスタ ノードを拡張する必要があります。これまでのところ、Apache は依然として世界で最も使用されている Web サーバーであり、市場シェアは約 60% です。 Amazon、Yahoo!、W3 Consortium、Financial Times など、世界中の多くの有名な Web サイトが Apache の製品です。その成功は主に、オープン ソース コード、オープンな開発チーム、クロスプラットフォーム アプリケーションのサポートにあります (ほぼすべての Unix、Windows、および Linux システム プラットフォームで実行できます) とその移植性。
Apache の誕生は非常に劇的です。 NCSAWWW サーバー プロジェクトが停止すると、NCSAWWW サーバーを使用している人々はサーバーのパッチを交換し始め、これらのパッチを管理するフォーラムの必要性をすぐに認識しました。このようにして、後に NCSA に基づいて Apache を作成する Apache Group が誕生しました。
Apache Web サーバー ソフトウェアには次の機能があります:
1. 最新の HTTP/1.1 通信プロトコルをサポートします
2. シンプルかつ強力な機能を備えています。ファイル構成プロセスに基づく
##3.ユニバーサル ゲートウェイ インターフェイスのサポート#4.IP ベースおよびドメイン名ベースの仮想ホストのサポート
##5.複数の HTTP 認証方法のサポート6. 統合 Perl 処理モジュール 7. 統合プロキシ サーバー モジュール 8. サーバー ステータスのリアルタイム監視とカスタマイズされたサーバー ログをサポート 9. サーバー側のサポート 命令が含まれます (SSI)10. Secure Socket Layer (SSL) のサポート11. ユーザー セッション プロセスの追跡を提供します12. FastCGI のサポート 13. JavaServlet はサードパーティ モジュールを通じてサポートできますWeb サーバーを選択する準備ができている場合は、Apache が最良の選択であることに疑いの余地はありません。 nginx サーバーNginx (エンジン x) は、高性能 HTTP およびリバース プロキシ Web サーバーであり、IMAP/POP3/ SMTPサービス。 Nginx は、ロシアで 2 番目にアクセス数の多いサイトである Rambler.ru サイト (ロシア語: Рамблер) 用に Igor Sesoev によって開発され、パブリック バージョン 1.19.6 が 2020 年 12 月 15 日にリリースされました。
BSD のようなライセンスに基づいてソース コードをリリースしており、その安定性、豊富な機能セット、シンプルな構成ファイル、およびシステム リソースの消費量の少なさで知られています。 2022 年 1 月 25 日に、nginx 1.21.6 がリリースされました。 Nginx は、BSD のようなプロトコルでリリースされた軽量の Web サーバー/リバース プロキシ サーバーおよび電子メール (IMAP/POP3) プロキシ サーバーです。 nginx の特徴は、メモリ占有量が少ないことと同時実行能力が高いことであり、実際、同じ種類の Web サーバーの中では nginx の同時実行能力の方が優れています。Nginx はほとんどの Unix Linux OS 上でコンパイルして実行でき、Windows に移植されたバージョンもあります。 Nginx の 1.20.0 安定版は 2021 年 4 月 20 日にリリースされました。通常の状況では、新しいサイトでは最新の安定版を製品版として使用することをお勧めします。既存のサイトをアップグレードする緊急性は高くありません。 Nginx のソース コードは 2 条項の BSD のようなライセンスを使用しています。
Nginx は、非常に強力で高性能な Web およびリバース プロキシ サービスです。多くの非常に優れた機能を備えています:
接続の同時実行性が高い場合、Nginx は、 Apache サービス 製品: Nginx は、米国のバーチャル ホスト ビジネスの上司によってよく選ばれるソフトウェア プラットフォームの 1 つです。最大 50,000 の同時接続の応答をサポート可能 開発モデルとして epoll と kqueue を選択してくれた Nginx に感謝します。
Apache と nginx の違いは何ですか:
1. 2 つの主な違いは、Apache が同期マルチプロセスであることです。モデル。接続はプロセスに対応します。nginx は非同期であり、複数の接続がプロセスに対応します。 nginx は静的ファイルを適切に処理し、メモリ消費量が少なくなります。しかし、Apache が依然として現在の主流であり、多くの豊富な機能を備えていることには疑いの余地がないため、依然としてそれに匹敵する必要があります。もちろん、nginx がニーズを満たすと判断した場合は、nginx を使用する方が経済的です。
2. nginx の負荷容量は、Apache の負荷容量よりもはるかに高くなります。最新のサーバーもnginxを使用しています。また、nginx の設定を変更した後は、設定に問題があるかどうかをテストできません。
3. Apache が再起動され、設定が間違っていることが判明すると、クラッシュします。変更するときは、十分に注意してください。現在、多くのクラスター サイト、フロントエンド nginx アンチ同時実行性、バックエンドの Apache クラスターとの連携も良好です。
4. nginx が動的リクエストを処理するのは役に立ちません。一般に、動的リクエストを処理するには Apache が必要です。nginx は静的リクエストと逆リクエストにのみ適しています。
5. 経験上、nginx は負荷パフォーマンスに優れた非常に優れたフロントエンド サーバーであり、Webbench を使用して 10,000 の静的ファイル リクエストを簡単にシミュレートできます。 Apacheはphpなどの言語のサポートが充実しているほか、強力なサポートネットワークがある、nginxよりも開発期間が長くバグが少ない、ただしマルチコア処理負荷をサポートしていないという欠点がある. フロントエンドとバックエンドにはnginx、apacheを使用することを推奨します。大規模なWebサイトの場合は、nginxのクラスタ機能を使用することをお勧めします。
6. 静的ファイルの処理、PHP-CGIのサポート、リバースプロキシ機能、フロントエンドキャッシュ、接続維持など、多くの場合、nginxの方がAPACHEよりも優れています。 Apache PHP (プリフォーク) モードでは、PHP の処理が遅い場合、またはフロントエンドの負荷が高い場合、Apache プロセスの数が急増し、サービス妨害が発生しやすくなります。
7. Apache は処理のダイナミクスに優れています。Nginx は同時実行性が高く、CPU メモリの使用量が少ないため、書き換えが頻繁に行われる場合は Apache が最適です。
8. 一般に、パフォーマンスが必要な Web サービスには nginx を使用します。パフォーマンスは必要なく、安定性だけが必要な場合は、Apache を使用してください。
推奨学習: 「PHP ビデオ チュートリアル 」
以上がどのサーバーにphpをデプロイできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。