debian wheezy 7.4 に nginx php5-fpm phpmyadminをインストール

debian wheezy 7.4 に nginx php5-fpm phpmyadminをインストール

debian wheezy 7.4 に nginx php5-fpm phpmyadminをインストール

debian wheezy 7.4 に nginx php5-fpm phpmyadminをインストール へのコメントはまだありません

はじめに

nginxをやっと使ってみることにしました。設定ファイル触るのも当然初めてで、エイリアスを切って、phpmyadminへの連携をするのにかなり手こずったので、メモ的な意味で情報公開です。

Apache関連パッケージ削除

[bash]
$ sudo dpkg -l |grep apache
[/bash]

列挙されるパッケージを削除しちゃってください。

nginxのリポジトリを追加

[bash]
$ sudo nano /etc/apt/sources.list
[/bash]

[bash]
deb http://packages.dotdeb.org wheezy all
deb-src http://packages.dotdeb.org wheezy all
[/bash]

GPGキーのインポート

[bash]
$ wget http://www.dotdeb.org/dotdeb.gpg
$ sudo apt-key add dotdeb.gpg
$ sudo aptitude update
[/bash]

nginx php5-fpm php5関連パッケージインストール

[bash]
$ sudo aptitude install nginx-full php5 php5-fpm php5-common php-pear php5-mcrypt php5-mysql php5-cli php5-gd php-apc php5-curl
[/bash]

php5-fpmの設定調整(不要です)

webをチェックすると、
/etc/php5/fpm/pool.d/www.conf を調整するような記述が見受けられましたが、2014年3月現在では特に調整の必要はナシです。

php5-fpm nginx再起動

[bash]

$ sudo /etc/init.d/php5-fpm restart
$ sudo /etc/init.d/nginx restart
[/bash]

nginx動作確認

http://localhost へアクセスして、以下のようなnginxのトップページが表示されればOK。

nginx-1

php5-fpm nginx連携

php関連の記述がある部分をコメントアウトします。unixソケットで動かすので、
#fastcgi_pass 127.0.0.1:9000;
の部分はコメントアウトのままで・・・。

[bash]

$ sudo nano /etc/nginx/sites-enabled/default

[/bash]

[bash]
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have “cgi.fix_pathinfo = 0;” in php.ini

# With php5-cgi alone:
#fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
[/bash]

確認用PHP作成

[bash]
$ nano /usr/share/nginx/html/test.php
[/bash]

中身
[php]

[/php]

確認

ブラウザーで http://localhost/test.phpへアクセス。

以下のような php情報が表示されればOK、念の為、
Server API FPM/FastCGI

という記述が上の方にあることをご確認あれ。

nginx-2

phpmyadminインストール

インストールというか、ファイルをダウンロードして、適当な場所へ展開してやってください。今回は /usr/share/phpmyadminへインストールすることとします。

http://www.phpmyadmin.net/home_page/index.php
へアクセスし、最新版ダウンロード。

[bash]
$ unzip phpMyAdmin-4.1.9-all-languages.zip
$ mv phpMyAdmin-4.1.9-all-languages phpmyadmin
$ sudo mv phpmyadmin /usr/share
[/bash]

nginx phpmyadmin連携

ここが一番のポイント。かなりハマったので、参考にしていただければと・・・

nginxの設定ファイルの php連携の記述の下あたりに、以下のような感じで、phpmyadminとの連携を記述してください。nginxは正規表現で指定したlocationで一番マッチ度が高いものを採用する仕組みみたいです。

ポイントは、/phpmyadmin へのアクセスを定義し、入れ子で!!! phpmyadmin配下の *.phpファイルへのアクセスを定義してあげます。

[diff mark=”16,19″]

location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have “cgi.fix_pathinfo = 0;” in php.ini

# With php5-cgi alone:
#fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}

ここ以下を追加

location /phpmyadmin {
root /usr/share;
index index.php;

location ~ ^/phpmyadmin.+\.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
include fastcgi_params;
}

}
[/diff]

nginx再起動

[bash]
$ sudo /etc/init.d/nginx restart
[/bash]

確認

http://localhost/phpmyadmin へアクセスし、こんな感じで表示されれば、めでたしめでたしです。

nginx-3

About the author:

Tags:

Related Posts

Leave a comment

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

Back to Top