ホームページ > php教程 > php手册 > Windows で nginx+php 環境を構成する

Windows で nginx+php 環境を構成する

WBOY
リリース: 2016-06-14 00:01:45
オリジナル
960 人が閲覧しました

nginx という単語を見たばかりで、その発音 (エンジン x) に非常に興味がありました。直訳すると「engine xtras (追加エフェクト)」ですが、この単語全体の意味は「極端な効果」や「追加のパフォーマンス」などです。 」。もちろん、これはここでの雑談ではなく、上記は余談です。

馴染みのある Apache や IIS と比較した nginx の利点は、私の知る限り、簡単に言うと「リバース プロキシ」と「負荷分散」にあります。したがって、Web サーバーのリソースを節約できることを考慮すると、Apache に代わって Web サービスを提供できます。それでは本題に入りますが、nginx には非常に多くの利点があります。では、Windows で nginx+php 環境を構成するにはどうすればよいでしょうか?ネット上には今でも転載・転載されている記事がたくさんあります。ここでは私の構成プロセスを紹介します:

1. 最初にアプリケーションパッケージを準備する必要があります。

nginx: nginx/Windows-1.0.4

php: php-5.2.16-nts-Win32-VC6-x86.zip (nginx の php は FastCGI で実行されるため、nts の非スレッドセーフ php パッケージをダウンロードします)

(これも使用されます) RunHiddenConsole: RunHiddenConsole.zip

2. インストールと構成。

1) phpのインストールと設定。

ダウンロードしたphpパッケージを直接解凍し、Dドライブのwnmpディレクトリ(D:wnmp)に移動します。ここで、解凍したフォルダーの名前をphp5に変更します。フォルダーに入り、php.ini 推奨ファイルを php.ini に変更し、Editplus または Notepad++ で開きます。

を見つけました
<div>
<span style="color: #000000;">extension_dir </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800000;">"</span><span style="color: #800000;">./ext</span><span style="color: #800000;">"</span>
</div>
ログイン後にコピー

に変更されました
<div>
<span style="color: #000000;">extension_dir </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800000;">"</span><span style="color: #800000;">D:/wnmp/php5/ext</span><span style="color: #800000;">"</span>
</div>
ログイン後にコピー
下を向いて見つけてください
<div>
<span style="color: #000000;">;extension</span><span style="color: #000000;">=</span><span style="color: #000000;">php_mysql.dll<br>;extension</span><span style="color: #000000;">=</span><span style="color: #000000;">php_mysqli.dll</span>
</div>
ログイン後にコピー

先ほど php の ext パスを指定した後、必要な拡張パッケージの前にある対応する「;」を削除するだけです。ここで php_mysql.dll と php_mysqli.dll を開いて、php が mysql をサポートできるようにします。もちろん、非常に重要な手順は、php5 ディレクトリにある libmysql.dll ファイルを C:Windows ディレクトリにコピーすることであることを忘れないでください。もちろん、システム変数でパスを指定することもできます。 , ここではより便利な方法を選択しました^_^。

この時点で、php はすでに mysql をサポートできます。

次に、php を nginx と組み合わせられるように php を設定します。

を検索します

<div>
<span style="color: #000000;">;cgi.fix_pathinfo</span><span style="color: #000000;">=</span><span style="color: #800080;">1</span>
</div>
ログイン後にコピー

ここで禁止を解除しましょう。

<div>
<span style="color: #000000;">cgi.fix_pathinfo</span><span style="color: #000000;">=</span><span style="color: #800080;">1</span>
</div>
ログイン後にコピー
このステップ は非常に重要です 。php の CGI 設定は次のとおりです。

2) nginx のインストールと設定。

ダウンロードした nginx-1.0.4 パッケージを D ドライブの wnmp ディレクトリに解凍し、名前を nginx に変更します。次に、php で動作できるように nginx を設定します。 nginx conf ディレクトリに入り、nginx 構成ファイル nginx.conf を開いて、

を見つけます。
<div>
<span style="color: #000000;">location </span><span style="color: #000000;">/</span><span style="color: #000000;"> {<br>      root   html;      #这里是站点的根目录<br>      index  index.html index.htm;<br>}</span>
</div>
ログイン後にコピー

root html;root D:/wnmp/www;

に変更します

さらに下に行って

を見つけます

<div>
<span style="color: #000000;"># pass the PHP scripts to FastCGI server listening on </span><span style="color: #800080;">127.0</span><span style="color: #000000;">.</span><span style="color: #800080;">0.1</span><span style="color: #000000;">:</span><span style="color: #800080;">9000</span><span style="color: #000000;"><br>#<br>#location </span><span style="color: #000000;">~</span><span style="color: #000000;"> \.php$ {<br>#    root           html;<br>#    fastcgi_pass   </span><span style="color: #800080;">127.0</span><span style="color: #000000;">.</span><span style="color: #800080;">0.1</span><span style="color: #000000;">:</span><span style="color: #800080;">9000</span><span style="color: #000000;">;<br>#    fastcgi_index  index.php;<br>#    fastcgi_param  SCRIPT_FILENAME  </span><span style="color: #ff0000;">/</span><span style="color: #000000;"><span style="color: #ff0000;">scripts</span>$fastcgi_script_name;<br>#    include        fastcgi_params;<br>#}</span>
</div>
ログイン後にコピー

まず先頭の「#」を削除し、root html;root D:/wnmp/www; に変更します。次に、赤でマークされた /scripts を「$document_root」に変更します。ここでの「$document_root」は、前の「root」が指すサイトのパスを指します。これは変更後のものです。

<div>
<span style="color: #000000;">#</span><span style="color: #000000;"> pass the PHP scripts to FastCGI server listening </span><span style="color: #0000ff;">on</span><span style="color: #000000;"> </span><span style="color: #000000;">127.0</span><span style="color: #000000;">.</span><span style="color: #000000;">0.1</span><span style="color: #000000;">:</span><span style="color: #000000;">9000</span><span style="color: #000000;"><br></span><span style="color: #000000;">#</span><span style="color: #000000;"><br>location ~ </span><span style="color: #000000;">\.</span><span style="color: #000000;">php</span><span style="color: #000000;">$</span><span style="color: #000000;"> {<br>      root           <span style="color: #ff0000;">D:</span></span><span style="color: #ff0000;">/wnmp/www;</span><span style="color: #000000;"><br>      fastcgi_pass   </span><span style="color: #800080;">127.0.0.1<span style="color: #000000;">:</span>9000</span><span style="color: #000000;">;</span><span style="color: #000000;"><br>      fastcgi_index  index</span><span style="color: #000000;">.</span><span style="color: #000000;">php</span><span style="color: #000000;">;</span><span style="color: #000000;"><br>      fastcgi_param  SCRIPT_FILENAME  </span><span style="color: #ff0000;">$document_root</span><span style="color: #000000;">$</span><span style="color: #000000;">fastcgi_script_name</span><span style="color: #000000;">;</span><span style="color: #000000;"><br>      include        fastcgi_params</span><span style="color: #000000;">;</span><span style="color: #000000;"><br>}</span>
</div>
ログイン後にコピー
設定ファイルを保存すれば準備完了です。

nginx+php 環境の初期設定が完了しました。見てみましょう。コマンド

Windows で nginx+php 環境を構成する を入力できます。

を使用して php を起動し、nginx を手動で起動することもできます。もちろん、スクリプトを使用してこれを実現することもできます。

まず、ダウンロードした RunHiddenConsole.zip パッケージを nginx ディレクトリに解凍します。 RunHiddenConsole.exe の機能は、コマンド ライン スクリプトの実行後にスクリプトを自動的に閉じることであり、スクリプトから開始されたプロセスは閉じられません。次に、「start_nginx.bat」という名前のスクリプトを作成し、Notepad++

で編集します。

<div>
<span style="color: #0000ff;">@echo</span><span style="color: #000000;"> </span><span style="color: #0000ff;">off</span><span style="color: #000000;"><br></span><span style="color: #008000;">REM</span><span style="color: #008000;"> Windows 下无效</span><span style="color: #008000;"><br>REM</span><span style="color: #008000;"> set PHP_FCGI_CHILDREN=5</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #008000;">REM</span><span style="color: #008000;"> 每个进程处理的最大请求数,或设置为 Windows 环境变量</span><span style="color: #008000;"><br></span><span style="color: #0000ff;">set</span><span style="color: #000000;"> PHP_FCGI_MAX_REQUESTS</span><span style="color: #000000;">=</span><span style="color: #000000;">1000</span><span style="color: #000000;"><br> <br></span><span style="color: #0000ff;">echo</span><span style="color: #000000;"> Starting PHP FastCGI</span><span style="color: #000000;">...</span><span style="color: #000000;"><br>RunHiddenConsole D:</span><span style="color: #000000;">/</span><span style="color: #000000;">wnmp</span><span style="color: #000000;">/</span><span style="color: #000000;">php5</span><span style="color: #000000;">/</span><span style="color: #000000;">php-cgi</span><span style="color: #000000;">.</span><span style="color: #000000;">exe -b </span><span style="color: #000000;">127.0</span><span style="color: #000000;">.</span><span style="color: #000000;">0.1</span><span style="color: #000000;">:</span><span style="color: #000000;">9000</span><span style="color: #000000;"> -c D:</span><span style="color: #000000;">/</span><span style="color: #000000;">wnmp</span><span style="color: #000000;">/</span><span style="color: #000000;">php5</span><span style="color: #000000;">/</span><span style="color: #000000;">php</span><span style="color: #000000;">.</span><span style="color: #000000;">ini<br> <br></span><span style="color: #0000ff;">echo</span><span style="color: #000000;"> Starting nginx</span><span style="color: #000000;">...</span><span style="color: #000000;"><br>RunHiddenConsole D:</span><span style="color: #000000;">/</span><span style="color: #000000;">wnmp</span><span style="color: #000000;">/</span><span style="color: #000000;">nginx</span><span style="color: #000000;">/</span><span style="color: #000000;">nginx</span><span style="color: #000000;">.</span><span style="color: #000000;">exe -p D:</span><span style="color: #000000;">/</span><span style="color: #000000;">wnmp</span><span style="color: #000000;">/</span><span style="color: #000000;">nginx</span>
</div>
ログイン後にコピー
stop_nginx.bat という名前の別のスクリプトを作成して、nginx をシャットダウンします

<div>
<span style="color: #0000ff;">@echo</span><span style="color: #000000;"> </span><span style="color: #0000ff;">off</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">echo</span><span style="color: #000000;"> Stopping nginx</span><span style="color: #000000;">...</span><span style="color: #000000;"> </span><span style="color: #000000;"> </span><span style="color: #000000;"><br>taskkill </span><span style="color: #000000;">/</span><span style="color: #000000;">F </span><span style="color: #000000;">/</span><span style="color: #000000;">IM nginx</span><span style="color: #000000;">.</span><span style="color: #000000;">exe </span><span style="color: #000000;">></span><span style="color: #000000;"> nul</span><span style="color: #000000;"></span><span style="color: #000000;"><br></span><span style="color: #0000ff;">echo</span><span style="color: #000000;"> Stopping PHP FastCGI</span><span style="color: #000000;">...</span><span style="color: #000000;"><br>taskkill </span><span style="color: #000000;">/</span><span style="color: #000000;">F </span><span style="color: #000000;">/</span><span style="color: #000000;">IM php-cgi</span><span style="color: #000000;">.</span><span style="color: #000000;">exe </span><span style="color: #000000;">></span><span style="color: #000000;"> nul<br></span><span style="color: #0000ff;">exit</span>
</div>
ログイン後にコピー

做好后,是这样的

Windows で nginx+php 環境を構成する

这样,我们的服务脚本也都创建完毕了。双击start_nginx.bat看看进程管理器是不是有两个nginx.exe的进程和一个php-cgi.exe的进程呢?

Windows で nginx+php 環境を構成する

这样nginx服务就启动了,而且php也以fastCGI的方式运行了。

到站点目录下,新建一个phpinfo.php的文件,在里面编辑

<div>
<span style="color: #000000;"></span><span style="color: #000000;">php<br>    </span><span style="color: #008080;">phpinfo</span><span style="color: #000000;">();<br></span><span style="color: #000000;">?></span>
</div>
ログイン後にコピー

保存后,打开浏览器输入“http://localhost/phpinfo.php”,如果看到

Windows で nginx+php 環境を構成する

就说明,nginx+php的环境已经配置好了,呵呵~

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート