ホームページ  >  記事  >  バックエンド開発  >  php vc11 とはどういう意味ですか?

php vc11 とはどういう意味ですか?

藏色散人
藏色散人オリジナル
2021-03-16 09:54:092465ブラウズ

php vc11 は、PHP の vc11 バージョンを指します。VC11 バージョンをダウンロードする前に、まず「VisualC RedistributableforVisualStudio2012」をインストールする必要があります。

php vc11 とはどういう意味ですか?

この記事の動作環境:Windows7システム、PHP7.1バージョン、DELL G3コンピュータ

PHP VC11、VC9について、VC6、およびスレッド セーフ バージョンと非スレッド セーフ バージョンの選択の問題

ここでは、参考のために PHP 環境をセットアップするときに収集した情報を示します:

これで、PHP のインストールが完了しました。 PHP 公式 Web サイトからパッケージをダウンロードできます VC11 または VC9 という言葉は何を意味しますか? どちらのインストール パッケージをダウンロードするのが良いでしょうか?実際、PHP 公式 Web サイトには次のような答えがあります:

VC6 バージョンは Visual Studio 6 コンパイラーを使用してコンパイルされます。PHP が Apache とともにインストールされている場合は、VC6 バージョンを選択する必要があります。 (現在、PHP 用の VC6 はありません)。

VC9 は、このバージョンの PHP が VisualStudio2008 でコンパイルされるのに対し、VC11 は VisualStudio2012 でコンパイルされることを意味します。これは、

VC9 バージョンをダウンロードする場合は、まず VisualC RedistributableforVisualStudio2008SP1 をインストールする必要があります。

VC11 バージョンをダウンロードする場合は、VisualStudio2012 用の VisualC Redistributable をインストールする必要があります。

To php をビルドするには、まずオペレーティング システムのバージョンを確認します。Windows の場合は、ここをクリックしてください: http://windows.php.net/download/

オペレーティング システムは 32 ビットですか、それとも 64 ビットですか? 32 ビットの場合は「x86」が付いているバージョンを選択し、64 ビットの場合は「x64」が付いているバージョンを選択します。では、WEBサーバーとは何なのか見てみましょう。 IIS系の場合は「非スレッドセーフ」、Apache httpd系の場合は「スレッドセーフ」のバージョンを選択してください。 Apache httpd の場合は、バイナリ バージョンのコンパイル方法にも依存します。コンパイル タイプは VC6、VC9、VC11 (それぞれ Visual C 6、Visual C 2008、Visual C 2012 を表します) の 3 つがあります。ここで問題が発生します。PHP の最新の公式バージョン 5.5 は VC11 でコンパイルされ、5.4 は VC9 でコンパイルされています。ただし、Apache httpd の最新バージョンは依然として VC6 でコンパイルされています。これは驚くべき事実を意味します。Apache httpd の正式バージョンと PHP の正式バージョンは実際には互換性がありません。では、Windows 上で既存の Apache PHP はどのように動作するのでしょうか? VC11 を使用して Apache httpd を自分でコンパイルすることもできますが、これは面倒です。PHP では、Apache httpd のサードパーティ パッケージ バージョンをダウンロードすることを公式に推奨しています。このサイトをお勧めします: http://www.apachelounge.com/download/。この点について説明する必要があります: この VC11 は XP をサポートしていません。私のように XP に懐かしさを感じている場合は、5.4.24 にアップグレードすることしかできません。5.5 は VC11 でコンパイルされており、VC11 は XP と 2003 をサポートしていません。

推奨学習: 「PHP ビデオ チュートリアル

Linux ベースの場合は、ここから PHP ソース コードをダウンロードしてください: http://cn2.php.net/ダウンロード.php

上記の Windows 版とは異なり、ここでダウンロードしたものは直接使用することはできません。これは単なる PHP のソース コードです。インストールするには、自分でコンパイルする必要があります。コンパイルするには、 gcc や make などのコンパイル ソフトウェアを多数インストールする必要があります。ドキュメント内で ./configure、make、make install が言及されているのを見ましたが、これは PHP のソース コード バージョンを指します。

PHP を自分でコンパイルするのはさらに面倒で、依存ライブラリが多く、陥りやすい落とし穴がたくさんあります。これについては、別の記事で説明します。それが面倒であれば、コンパイルされたバージョン、具体的には各ディストリビューションの公式ソフトウェア ライブラリを見つけることができます。以下では、人気のある ubuntu システムと centos システムを例としてそれぞれ説明します;

deb パッケージ管理タイプ (ubuntu、Debian)

apt-cache search php コマンドを使用して、多くの結果を検索しますこれは「php5」であり、完全なコマンドは次のとおりです: apt-get install php5

コマンドにはバージョン番号 5 が含まれており、PHP6 に何が起こるかは誰にも分からないため、これは明らかに常に適用できるわけではありません。将来。

コマンドライン php エンジンをシェルにインストールする場合は、このパッケージをインストールします

apt-getinstall php5-cli

RPM パッケージ管理(Fedora、RedHat、SUSE、CentOS)

yuminstall php

php コマンド ラインの場合は、yuminstall php-cli

方法をインストールします。スレッドセーフと非スレッドセーフのバージョンを選択しますか?

バージョン 5.2.1 以降、Windows バージョンの PHP は ThreadSafe (スレッド セーフ) と None Thread Safe (NTS、非スレッド セーフ) に分かれています。この 2 つの違いは何ですか?どちらを使用するべきですか?ここで簡単に紹介します。

2000 年 10 月 20 日にリリースされた PHP 3.0.17 の最初の Windows バージョン以降、すべてのバージョンがスレッドセーフになっています。これは、Windows システムが Linux/Unix システムとは異なるマルチプロセス作業方法を使用しているためです。マルチスレッド作業方式を採用しています。 IIS で CGI モードで PHP を実行すると、CGI モードがマルチスレッドではなくマルチプロセスに基づいているため、非常に遅くなります。通常、PHP は ISAPI モードで実行されるように設定します。ISAPI はマルチスレッド モードであり、非常に高速です。しかし、問題があります。一般的に使用される PHP 拡張機能の多くは、Linux/Unix のマルチプロセスの考え方に基づいて開発されており、これらの拡張機能を ISAPI モードで実行すると、問題が発生し、IIS がダウンします。したがって、CGI モードは IIS で PHP を実行する最も安全な方法ですが、CGI モードでは HTTP リクエストごとに PHP 環境全体をリロードおよびアンロードする必要があり、その消費量は膨大です。

IIS での PHP の効率とセキュリティを考慮するために、Microsoft は FastCGI ソリューションを提供しました。 FastCGI を使用すると、新しいリクエストごとにプロセスを再度開くのではなく、PHP プロセスを再利用できます。同時に、FastCGI では複数のプロセスを同時に実行することもできます。これにより、CGI プロセス モードの過剰な消費の問題が解決されるだけでなく、CGI プロセス モードにはスレッド セーフの問題がないという事実も利用されます。

文字通りに理解しましょう。スレッド セーフとは、スレッドの安全性を意味します。新しい要件が発生してシステム リソースが使い果たされた場合に、CGI 実行によって新しいスレッドが開始されるのを防ぐために、実行中にスレッド セーフ チェックが実行されます。非スレッド セーフは非スレッド セーフであり、実行中にスレッド (スレッド) の安全性チェックを実行しません。

したがって、ISAPI を使用して PHP を実行する場合は、ThreadSafe (スレッド セーフ) バージョンを使用する必要があり、FastCGI モードを使用して PHP を実行する場合は、スレッド セーフティ チェックを使用する必要はなく、None Thread を使用してください。安全な (NTS 、非スレッドセーフ) バージョンでは効率が向上します。

PHP の 2 つの実行方法、ISAPI と FastCGI を見てみましょう。

ISAPI の実行メソッドは DLL ダイナミック ライブラリの形式で使用され、ユーザーの要求後に実行できます。ユーザーの要求を処理してもすぐに消えるわけではないため、スレッドの安全性チェックが必要です。プログラムのパフォーマンスが向上します。実行効率が向上するため、ISAPI を使用して PHP を実行している場合は、スレッド セーフ バージョンを選択することをお勧めします。

FastCGI 実行メソッドは単一のスレッドを使用して操作を実行するため、スレッド セーフ チェックを実行する必要があります (スレッド セーフ チェックを除く)。保護すると実際に実行効率が向上します。したがって、FastCGI を使用して PHP を実行する場合は、非スレッド セーフ バージョンを選択することをお勧めします。

以上がphp vc11 とはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。