さくらVPSにPHPをインストールする

PHPをインストール

これも yum コマンドでインストールできる。

[takatoh@www2465uo ~]$ sudo -s
[sudo] password for takatoh: 
[root@www2465uo takatoh]# yum install php-cli php-mysql php-common php php-cgi php-fpm php-gd php-mbstring
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: ftp.tsukuba.wide.ad.jp
 * epel: ftp.kddilabs.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php.x86_64 0:5.3.3-27.el6_5.1 will be installed
--> Processing Dependency: httpd-mmn = 20051115 for package: php-5.3.3-27.el6_5.1.x86_64
--> Processing Dependency: httpd for package: php-5.3.3-27.el6_5.1.x86_64
---> Package php-cli.x86_64 0:5.3.3-27.el6_5.1 will be installed
---> Package php-common.x86_64 0:5.3.3-27.el6_5.1 will be installed
---> Package php-fpm.x86_64 0:5.3.3-27.el6_5.1 will be installed
---> Package php-gd.x86_64 0:5.3.3-27.el6_5.1 will be installed
---> Package php-mbstring.x86_64 0:5.3.3-27.el6_5.1 will be installed
---> Package php-mysql.x86_64 0:5.3.3-27.el6_5.1 will be installed
--> Processing Dependency: php-pdo(x86-64) for package: php-mysql-5.3.3-27.el6_5.1.x86_64
--> Running transaction check
---> Package httpd.x86_64 0:2.2.15-31.el6.centos will be installed
--> Processing Dependency: httpd-tools = 2.2.15-31.el6.centos for package: httpd-2.2.15-31.el6.centos.x86_64
--> Processing Dependency: apr-util-ldap for package: httpd-2.2.15-31.el6.centos.x86_64
---> Package php-pdo.x86_64 0:5.3.3-27.el6_5.1 will be installed
--> Running transaction check
---> Package apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1 will be installed
---> Package httpd-tools.x86_64 0:2.2.15-31.el6.centos will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package            Arch        Version                      Repository    Size
================================================================================
Installing:
 php                x86_64      5.3.3-27.el6_5.1             updates      1.1 M
 php-cli            x86_64      5.3.3-27.el6_5.1             updates      2.2 M
 php-common         x86_64      5.3.3-27.el6_5.1             updates      526 k
 php-fpm            x86_64      5.3.3-27.el6_5.1             updates      1.1 M
 php-gd             x86_64      5.3.3-27.el6_5.1             updates      107 k
 php-mbstring       x86_64      5.3.3-27.el6_5.1             updates      456 k
 php-mysql          x86_64      5.3.3-27.el6_5.1             updates       82 k
Installing for dependencies:
 apr-util-ldap      x86_64      1.3.9-3.el6_0.1              base          15 k
 httpd              x86_64      2.2.15-31.el6.centos         updates      824 k
 httpd-tools        x86_64      2.2.15-31.el6.centos         updates       73 k
 php-pdo            x86_64      5.3.3-27.el6_5.1             updates       76 k

Transaction Summary
================================================================================
Install      11 Package(s)

Total download size: 6.6 M
Installed size: 22 M
Is this ok [y/N]: y
Downloading Packages:
(1/11): apr-util-ldap-1.3.9-3.el6_0.1.x86_64.rpm         |  15 kB     00:00     
(2/11): httpd-2.2.15-31.el6.centos.x86_64.rpm            | 824 kB     00:03     
(3/11): httpd-tools-2.2.15-31.el6.centos.x86_64.rpm      |  73 kB     00:00     
(4/11): php-5.3.3-27.el6_5.1.x86_64.rpm                  | 1.1 MB     00:05     
(5/11): php-cli-5.3.3-27.el6_5.1.x86_64.rpm              | 2.2 MB     00:09     
(6/11): php-common-5.3.3-27.el6_5.1.x86_64.rpm           | 526 kB     00:02     
(7/11): php-fpm-5.3.3-27.el6_5.1.x86_64.rpm              | 1.1 MB     00:05     
(8/11): php-gd-5.3.3-27.el6_5.1.x86_64.rpm               | 107 kB     00:00     
(9/11): php-mbstring-5.3.3-27.el6_5.1.x86_64.rpm         | 456 kB     00:01     
(10/11): php-mysql-5.3.3-27.el6_5.1.x86_64.rpm           |  82 kB     00:00     
(11/11): php-pdo-5.3.3-27.el6_5.1.x86_64.rpm             |  76 kB     00:00     
--------------------------------------------------------------------------------
Total                                           193 kB/s | 6.6 MB     00:34     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : php-common-5.3.3-27.el6_5.1.x86_64                          1/11 
  Installing : php-cli-5.3.3-27.el6_5.1.x86_64                             2/11 
  Installing : php-pdo-5.3.3-27.el6_5.1.x86_64                             3/11 
  Installing : httpd-tools-2.2.15-31.el6.centos.x86_64                     4/11 
  Installing : apr-util-ldap-1.3.9-3.el6_0.1.x86_64                        5/11 
  Installing : httpd-2.2.15-31.el6.centos.x86_64                           6/11 
  Installing : php-5.3.3-27.el6_5.1.x86_64                                 7/11 
  Installing : php-mysql-5.3.3-27.el6_5.1.x86_64                           8/11 
  Installing : php-mbstring-5.3.3-27.el6_5.1.x86_64                        9/11 
  Installing : php-gd-5.3.3-27.el6_5.1.x86_64                             10/11 
  Installing : php-fpm-5.3.3-27.el6_5.1.x86_64                            11/11 
  Verifying  : php-mbstring-5.3.3-27.el6_5.1.x86_64                        1/11 
  Verifying  : php-cli-5.3.3-27.el6_5.1.x86_64                             2/11 
  Verifying  : httpd-2.2.15-31.el6.centos.x86_64                           3/11 
  Verifying  : php-gd-5.3.3-27.el6_5.1.x86_64                              4/11 
  Verifying  : php-5.3.3-27.el6_5.1.x86_64                                 5/11 
  Verifying  : apr-util-ldap-1.3.9-3.el6_0.1.x86_64                        6/11 
  Verifying  : php-pdo-5.3.3-27.el6_5.1.x86_64                             7/11 
  Verifying  : httpd-tools-2.2.15-31.el6.centos.x86_64                     8/11 
  Verifying  : php-mysql-5.3.3-27.el6_5.1.x86_64                           9/11 
  Verifying  : php-fpm-5.3.3-27.el6_5.1.x86_64                            10/11 
  Verifying  : php-common-5.3.3-27.el6_5.1.x86_64                         11/11 

Installed:
  php.x86_64 0:5.3.3-27.el6_5.1         php-cli.x86_64 0:5.3.3-27.el6_5.1      
  php-common.x86_64 0:5.3.3-27.el6_5.1  php-fpm.x86_64 0:5.3.3-27.el6_5.1      
  php-gd.x86_64 0:5.3.3-27.el6_5.1      php-mbstring.x86_64 0:5.3.3-27.el6_5.1 
  php-mysql.x86_64 0:5.3.3-27.el6_5.1  

Dependency Installed:
  apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1    httpd.x86_64 0:2.2.15-31.el6.centos
  httpd-tools.x86_64 0:2.2.15-31.el6.centos php-pdo.x86_64 0:5.3.3-27.el6_5.1  

Complete!

ちゃんとインストールできたかテスト。

[root@www2465uo takatoh]# php -v
PHP 5.3.3 (cli) (built: Aug  6 2014 05:54:27) 
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

5.3.3 がインストールされているのがわかる。

PHPの設定

/etc/php.ini ファイルを編集する。

[root@www2465uo takatoh]# cp /etc/php.ini /etc/php.ini.orig
[root@www2465uo takatoh]# vim /etc/php.ini

編集するのは次の箇所。まずはエラーログの場所を変更。

error_log = /var/log/php_errors.log

日本語の設定。

mbstring.language = Japanese

(中略)

mbstring.internal_encoding = UTF-8

http_input。

mbstring.http_input = auto

detect_order。

mbstring.detect_order = auto

expose_php を Off に。

expose_php = Off

最後にタイムゾーン。

date.timezone = Asia/Tokyo

これで PHP の設定は終了。Nginx を再起動する。

[root@www2465uo takatoh]# service nginx restart
nginx を停止中:                                            [  OK  ]
nginx を起動中:                                            [  OK  ]

php-fpmの設定

php-fpm てのは、PHP を Fast-CGI で動かすものらしい。設定ファイルは /etc/php-fpm.d/www.conf。

使用するポート。これはデフォルトのまま。

listen = 127.0.0.1:9000

許可するクライアントの IP アドレス。これも localhost だけなのでデフォルト。

listen.allowed_clients = 127.0.0.1

php-fpm サービスの実行ユーザとグループ。ここでは nginx としたので、あとで作る。

; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

php-fpm のプロセス数を定量にする。

;pm = dynamic
pm = static

最大子プロセス数の設定。

;pm.max_children = 50
pm.max_children = 3

php-fpm が受け付ける最大要求数の設定。これを超えると子プロセスが再起動する。

pm.max_requests = 500

これで、編集は終了。

さて、実行ユーザを nginx としたので、それを作る。

[root@www2465uo takatoh]# useradd nginx
useradd: ユーザ 'nginx' は既に存在します

あれ、そうなの。Nginx をインストールした時に作られたのかな。
じゃあこのまま php-fpm を起動。ついでに自動起動するようにしておく。

[root@www2465uo takatoh]# /etc/init.d/php-fpm start
php-fpm を起動中:                                          [  OK  ]
[root@www2465uo takatoh]# chkconfig php-fpm on

Nginxの設定

今度は Nginx の設定だ。編集するファイルは /etc/nginx/nginx.conf。といっても変えたのは1行だけ。あとはデフォルトのまま。

user nginx nginx;

つぎは、Fast-CGI のための設定。ファイルは /etc/nginx/fastcgi_params だけど、このデフォルトのファイルをそのまま使うので編集はなし。

さて、あとはバーチャルホストの設定なんだけど、まだドメインを取っていないので、ここでいったん終了。

参考サイト

 cf. さくらのVPS入門 – ドットインストール
 cf. CentOS,ScientificLinuxでLAMP(Nginx+MySQL+PHP)インストールからWordPressを動かすまで(Nginx編)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください