ホームページ >バックエンド開発 >PHPチュートリアル >WindowsでのNginx+PHP5のインストールと設定方法
Windows での Nginx+PHP5 のインストールと設定方法
PHP5 をインストールします
まず、最新の PHP5.2.9-2 Windows バージョンを http://www.php.net/downloads.php からダウンロードし、C:php に解凍して、php.ini を配置します。 、名前を php.ini に変更し、いくつかのオプションを開いて変更します:
error_reporting = E_ALL
display_errors = オン
extension_dir = "C:phpext"
; 動的拡張の場合、必要に応じて拡張の前のコメントを削除できます。たとえば、PDO をロードするには、MySQL
extension=php_pdo.dll
extension=php_pdo_mysql.dll
cgi.force_redirect = 1
cgi.fix_pathinfo = 1
cgi.rfc2616_headers = 1
依存ファイルの検索順序: 最初は php.exe が配置されているディレクトリ、次に Apache の bin ディレクトリなどの Web サーバーの起動場所が検索されます。 Windows PATH 環境変数内のディレクトリ。ここでは Windows ディレクトリにファイルをコピーしないでください。必要に応じて、将来の PHP アップグレードを容易にするために C:php5 を PATH に追加できます。
Nginx をインストールします
v0.7.52 から、Nginx は Windows バージョンの Nginx をリリースし始めます。公式 Web サイトからダウンロードできます: http://nginx.net
私は 0.8.37 を使用しています。ダウンロード後、リリースファイルをD:nginxに解凍します。
Nginx はリクエストを処理するために FastCGI サーバーと連携する必要があります。PHP FastCGI サーバーを実行するには 2 つの方法があります。
c:/php を実行します。コマンドライン /php-cgi.exe -b 127.0.0.1:9000 -c c:/php/php.ini で PHP FastCGI
を起動します
# 127.0.0.1:9000 でリッスンしている FastCGI サーバーに PHP スクリプトを渡します
location ~ .php$ {
root d:/public_html;
include php.conf;
}
root ($document_root) は、php スクリプトのルート ディレクトリを指し、Web サイトのルート ディレクトリに設定されます。 Windows では、ルート パスに注意する必要があります。Windows のデフォルトの "" ではなく、"/" をパス区切り文字として使用するのが最善です。そうしないと、たとえば、次のパスのように問題が発生しやすくなります。は機能しません。テスト内の t はタブ文字として解析されるため、Nginx は 500 エラーをスローします。もちろん、d:\public_html\test のようにバックスラッシュ エスケープを追加することもできます。
# ローカル ポート 9000 に接続します。ここでのポートは、PHP によって開かれたポートを指します。 FastCGI Server.
# php-cgi.exe によって開かれたポートと一致させてください
# Nginx が php ファイルのリクエストを受信すると、それを PHP FastCGI Server
fastcgi_pass 127.0 に自動的に転送します。 0.1:9000;
fastcgi_indexindex.php;
include fastcgi_params;
設定を保存するために別の php.conf を作成する必要がある理由は、複数の仮想ホストを設定するときに nginx.conf を簡素化するためです。 nginx の場合、各仮想ホストで php を設定する必要があるため、メインの設定ファイルは繰り返しが多くなり、肥大化します。
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
その他の設定、メインサーバー:
# デフォルトで開始されるプロセスの数
worker_processes 1;
error_log logs/error.log;
#error_log logs/error.log Notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
# プロセスによって処理される接続の最大数、
# ローカル開発、デフォルトは不要1024、ここでは 64
worker_connections 64;
}
に変更されました
autoindex_exact_size オン;
autoindex_localtime オン;
start_nginx.bat、PHP FastCGI と Nginx を同時に起動するために使用されます:
@echo off
echo starting PHP FastCGI...
RunHiddenConsole c:/php/php-cgi.exe - b 127.0. 0.1:9000 -c c:/php/php.ini
echo nginx を起動しています...
d:/nginx/nginx.exe
RunHiddenConsole.exe は、DOS ウィンドウを非表示にするために使用される小さなプログラムです。ここから RunHiddenConsole.zip (1.01 kb) をダウンロードします。
start_nginx.bat を開いた後、DOS ウィンドウも表示されますが、安全に閉じることができ、Nginx と php-cgi.exe は閉じられません。
stop_nginx.bat、シャットダウンに使用:
@echo off
echo nginx を停止しています...
taskkill /F /IM nginx.exe > nul
echo PHP FastCGI を停止しています。 .
taskkill /F /IM php-cgi.exe > nul
exit
これで基本的な設定は完了です。