復興ログ

未来の被災地にいるアナタと数十年後のキミたちへ。すべての記録を残します。

さくらVPSでPHPを動かすまで

さくらインターネットでVPSを借りてPHPを動かすまでの方法です。メモメモ。

VPSを契約する

オンラインですぐに契約ができます。

  1. VPS(仮想専用サーバ)のさくらインターネット - VPSの詳しいスペックについてはこちら
  2. SAKURA.AD.JP // お申込み - 申し込みはこちら

契約後10分位待つと「[さくらのVPS] 仮登録完了のお知らせ」のタイトルでメールが届きます。
VPSのIPと初期パスワードが記載してあるります。

これで契約は終了。
ログイン後にさくらインターネットVPSコントロールパネルからサーバーを起動します。
f:id:hebita164:20110212172011p:image

仮想サーバ操作>起動の後に
稼働中となればOKです。

サーバにログインしてあれこれ

1.rootさんでサーバにログイン

Macなら付属のターミナルで。WindowsならTera Termなどを使用します。

$ ssh root@サーバのIPアドレス

サーバからパスワードを聞かれるので、仮登録完了のメールに記載してあるパスワードを入力してログインします。

2.rootさんのパスワードを変更

初期パスワードなんて覚えていられません。。

# passwd 

新しく使うパスワードを二回聞かれます。

3.yumをアップデート

セキュリティ的にもアップデートをお忘れなく。結構、パッチが当たった気がする。。

# yum update
4.ユーザを追加します

rootさんでログインするのはよろしくないので、sudo権限を持ったユーザを作ります
hebita164さんを作る例です。

# adduser hebita164
# passwd hebita164

sudo権限をあげます

# visudo

・
・
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
## by hebita164
hebita164       ALL=(ALL)       ALL ## ←追記
・
・
5.作ったユーザになる
# su hebita164

作ったユーザで作業すると良いですね。
アカウントの初期設定はこんな感じ。

サーバのセットアップ

基本の基本のパッケージをインストールします。yumを使用してインストールしましょう。

1.vimをインストール

テキストエディタをインストールです。

# sudo yum -y install vim-enhanced
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: ftp.nara.wide.ad.jp
 * base: ftp.nara.wide.ad.jp
 * extras: ftp.nara.wide.ad.jp
 * updates: ftp.nara.wide.ad.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package vim-enhanced.x86_64 2:7.0.109-6.el5 set to be updated
--> Processing Dependency: vim-common = 2:7.0.109-6.el5 for package: vim-enhanced
--> Running transaction check
---> Package vim-common.x86_64 2:7.0.109-6.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package              Arch           Version                 Repository    Size
================================================================================
Installing:
 vim-enhanced         x86_64         2:7.0.109-6.el5         base         1.3 M
Installing for dependencies:
 vim-common           x86_64         2:7.0.109-6.el5         base         6.4 M

Transaction Summary
================================================================================
Install       2 Package(s)
Upgrade       0 Package(s)

Total download size: 7.7 M
Downloading Packages:
(1/2): vim-enhanced-7.0.109-6.el5.x86_64.rpm             | 1.3 MB     00:00     
(2/2): vim-common-7.0.109-6.el5.x86_64.rpm               | 6.4 MB     00:00     
--------------------------------------------------------------------------------
Total                                            23 MB/s | 7.7 MB     00:00     
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : vim-common                                               1/2 
  Installing     : vim-enhanced                                             2/2 

Installed:
  vim-enhanced.x86_64 2:7.0.109-6.el5                                           

Dependency Installed:
  vim-common.x86_64 2:7.0.109-6.el5                                             

Complete!

OK!
vimの設定ファイル

~/.vimrc

を作成しましょう。

2.apacheのインストール

webサーバをインストールします。

# sudo yum install httpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: ftp.nara.wide.ad.jp
 * base: ftp.nara.wide.ad.jp
 * extras: ftp.nara.wide.ad.jp
 * updates: ftp.nara.wide.ad.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package httpd.x86_64 0:2.2.3-43.el5.centos.3 set to be updated
addons/filelists                                         |  197 B     00:00     
base/filelists_db                                        | 4.0 MB     00:00     
extras/filelists_db                                      | 225 kB     00:00     
updates/filelists_db                                     | 3.9 MB     00:00     
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package      Arch          Version                        Repository      Size
================================================================================
Installing:
 httpd        x86_64        2.2.3-43.el5.centos.3          updates        1.2 M

Transaction Summary
================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 1.2 M
Is this ok [y/N]: y
Downloading Packages:
httpd-2.2.3-43.el5.centos.3.x86_64.rpm                   | 1.2 MB     00:00     
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : httpd                                                    1/1 

Installed:
  httpd.x86_64 0:2.2.3-43.el5.centos.3                                          

Complete!

OK!!
プロセスのスタート

# sudo /etc/rc.d/init.d/httpd start
Starting httpd:                                            [  OK  ]

これでwebサービスがスタートします。
ここまで、出来れば
http://サーバのIP
にアクセスするとapacheの画面が出力されます。

3.PHPをインストール

CentOSのyumでPHPパッケージをインストールしようとすると、5.1系が入ろうとします。。→(´;ω;`)ウッ…
最新の5.3系を入れるためにRemiレポジトリを使います。
コマンド

# sudo rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
# sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
# sudo yum install --enablerepo=remi php

rpmの場所は変わります - 2011年2月12日
ログです。

# sudo rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
Retrieving http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
warning: /var/tmp/rpm-xfer.W1SHxX: Header V3 DSA signature: NOKEY, key ID 217521f6
Preparing...                ########################################### [100%]
   1:epel-release           ########################################### [100%]

# sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
Retrieving http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
warning: /var/tmp/rpm-xfer.UpIWqQ: Header V4 DSA signature: NOKEY, key ID 00f97f56
Preparing...                ########################################### [100%]
   1:remi-release           ########################################### [100%]

# sudo yum install --enablerepo=remi php
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: ftp.nara.wide.ad.jp
 * base: ftp.nara.wide.ad.jp
 * epel: ftp.riken.jp
 * extras: ftp.nara.wide.ad.jp
 * remi: rpms.famillecollet.com
 * updates: ftp.nara.wide.ad.jp
epel                                                     | 3.7 kB     00:00     
epel/primary_db                                          | 3.5 MB     00:00     
remi                                                     | 2.6 kB     00:00     
remi/primary_db                                          | 246 kB     00:01     
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php.x86_64 0:5.3.5-1.el5.remi.1 set to be updated
--> Processing Dependency: php-cli = 5.3.5-1.el5.remi.1 for package: php
--> Processing Dependency: php-common = 5.3.5-1.el5.remi.1 for package: php
--> Running transaction check
---> Package php-cli.x86_64 0:5.3.5-1.el5.remi.1 set to be updated
--> Processing Dependency: libedit.so.0()(64bit) for package: php-cli
---> Package php-common.x86_64 0:5.3.5-1.el5.remi.1 set to be updated
--> Running transaction check
---> Package libedit.x86_64 0:2.11-2.20080712cvs.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package          Arch         Version                         Repository  Size
================================================================================
Updating:
 php              x86_64       5.3.5-1.el5.remi.1              remi       1.4 M
Installing for dependencies:
 libedit          x86_64       2.11-2.20080712cvs.el5          epel        80 k
Updating for dependencies:
 php-cli          x86_64       5.3.5-1.el5.remi.1              remi       2.6 M
 php-common       x86_64       5.3.5-1.el5.remi.1              remi       968 k

Transaction Summary
================================================================================
Install       1 Package(s)
Upgrade       3 Package(s)

Total download size: 4.9 M
Is this ok [y/N]: y
Downloading Packages:
(1/4): libedit-2.11-2.20080712cvs.el5.x86_64.rpm         |  80 kB     00:00     
(2/4): php-common-5.3.5-1.el5.remi.1.x86_64.rpm          | 968 kB     00:02     
(3/4): php-5.3.5-1.el5.remi.1.x86_64.rpm                 | 1.4 MB     00:03     
(4/4): php-cli-5.3.5-1.el5.remi.1.x86_64.rpm             | 2.6 MB     00:04     
--------------------------------------------------------------------------------
Total                                           433 kB/s | 4.9 MB     00:11     
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 217521f6
epel/gpgkey                                              | 1.7 kB     00:00     
Importing GPG key 0x217521F6 "Fedora EPEL <epel@fedoraproject.org>" from /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
Is this ok [y/N]: y
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 00f97f56
remi/gpgkey                                              | 1.3 kB     00:00     
Importing GPG key 0x00F97F56 "Remi Collet <RPMS@FamilleCollet.com>" from /etc/pki/rpm-gpg/RPM-GPG-KEY-remi
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction

WARNING : This php-* RPM are not official Fedora/Redhat build and
overrides the official ones. Don't file bugs on Fedora Project nor Redhat.

Use dedicated forums http://forums.famillecollet.com/

  Updating       : php-common                                               1/7 
  Installing     : libedit                                                  2/7 
  Updating       : php-cli                                                  3/7 
  Updating       : php                                                      4/7 
  Cleanup        : php-common                                               5/7 
  Cleanup        : php-cli                                                  6/7 
  Cleanup        : php                                                      7/7 

Dependency Installed:
  libedit.x86_64 0:2.11-2.20080712cvs.el5                                       

Updated:
  php.x86_64 0:5.3.5-1.el5.remi.1                                               

Dependency Updated:
  php-cli.x86_64 0:5.3.5-1.el5.remi.1   php-common.x86_64 0:5.3.5-1.el5.remi.1  

Complete!

# php -v
PHP 5.3.5 (cli) (built: Jan 22 2011 10:27:18) 
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

わーい、PHP5.3が入った〜!
php-mbstringを入れてみる
マルチバイト系の関数を使用するためにmbを入れます。

# sudo yum install --enablerepo=remi php-mbstring
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: ftp.nara.wide.ad.jp
 * base: ftp.nara.wide.ad.jp
 * epel: ftp.riken.jp
 * extras: ftp.nara.wide.ad.jp
 * remi: rpms.famillecollet.com
 * updates: ftp.nara.wide.ad.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-mbstring.x86_64 0:5.3.5-1.el5.remi.1 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package             Arch          Version                    Repository   Size
================================================================================
Installing:
 php-mbstring        x86_64        5.3.5-1.el5.remi.1         remi        2.3 M

Transaction Summary
================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 2.3 M
Is this ok [y/N]: y
Downloading Packages:
php-mbstring-5.3.5-1.el5.remi.1.x86_64.rpm               | 2.3 MB     00:03     
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : php-mbstring                                             1/1 

Installed:
  php-mbstring.x86_64 0:5.3.5-1.el5.remi.1                                      

Complete!

インストールでけた!

# yum list installed *php*
Loaded plugins: fastestmirror
Installed Packages
php.x86_64                          5.3.5-1.el5.remi.1                 installed
php-cli.x86_64                      5.3.5-1.el5.remi.1                 installed
php-common.x86_64                   5.3.5-1.el5.remi.1                 installed
php-mbstring.x86_64 

apacheの再起動
PHPを読み込ませます。

# sudo /etc/rc.d/init.d/httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

これで、PHPがapacheに乗りました。

/var/www/html/

がデフォルトのドキュメントルートになるので、この下にPHPファイルを置けば、PHPが出力されます。

その他

VPSなので、sudo権限が使えることからも、レンタルサーバよりも自由度が高く、ソフトウェアのインストールも自由です。
それと同時に、セキュリティも意識しなければなりませんね。VPSの良い点と、めんどうな点を理解して、運用してみたいものです。