̃Gg[͂ĂȃubN}[Nɒlj

SAKURA VPS :: LAMP 環境の構築



まず、root で ssh ログイン

% ssh root@<IPアドレス>

下記の基本設定を行う
CentOS5.5 の設定

LAMP のインストール

下記を参考に
1時間でできるLAMP環境構築術(CentOS編)

mkdir sysad
cd sysad

# Fedora EPEL
// wget http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
↑すでに無くなっている?(2012/08/08現在)ので下記で代替↓
wget http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/5/x86_64/epel-release-5-4.noarch.rpm

# remi
wget http://rpms.famillecollet.com/el5.x86_64/remi-release-5-8.el5.remi.noarch.rpm

# RPMForge
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

# 3つのリポジトリを追加
sudo rpm -Uvh epel-release-5-4.noarch.rpm remi-release-5-8.el5.remi.noarch.rpm rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

# 通常は利用しない
sudo vi /etc/yum.repos.d/epel.repo
enabled=0 ← 一番上の「enabled」を0に変更

sudo vi /etc/yum.repos.d/rpmforge.repo
enabled=0 ← 一番上の「enabled」を0に変更

sudo vi /etc/yum.repos.d/remi.repo
enabled=0 ← 一番上の「enabled」を0に変更(※もともと0になっている)

# パッケージの一括インストール
sudo yum --enablerepo=remi,epel,rpmforge install httpd-devel php-devel php-pear php-mysql php-mbstring php-mcrypt php-eaccelerator mysql-server
※ 必要なら phpmyadmin も付与(後からでも入れられる)

.htaccess を有効にする

sudo vi /etc/httpd/conf/httpd.conf
#AllowOverride None
AllowOverride All

MySQLの設定と起動

起動させてみる

sudo /etc/init.d/mysqld start

ウィザード形式にて設定を行う

sudo /usr/bin/mysql_secure_installation

Enter current password for root (enter for none):← デフォルトではパスワードが無いので、そのままリターン

Set root password? [Y/n]  ← 「y」と入力してリターン
New password: ← rootパスワードとして設定したい文字列を入力してリターン
Re-enter new password: ← もう一度入力してリターン

Remove anonymous users? [Y/n]   ← 「y」と入力してリターン

Disallow root login remotely? [Y/n]   ← 「y」と入力してリターン

Remove test database and access to it? [Y/n]  ← 「y」と入力してリターン

Reload privilege tables now? [Y/n]   ← 「y」と入力してリターン

mysqlの文字エンコーディング設定(必要なら)

sudo vi /etc/my.cnf

↓末行に追記

[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8

phpmyadminの設定

sudo vi /etc/httpd/conf.d/phpmyadmin.conf
#
#  Web application to manage MySQL
#

<Directory "/usr/share/phpmyadmin">
  Order Deny,Allow
  Deny from all
  #Allow from 127.0.0.1
  Allow from all

  AuthType Basic
  AuthName administrator
  AuthUserFile /usr/share/phpmyadmin/.htpasswd
  Require valid-user

  php_value post_max_size       96M
  php_value upload_max_filesize 96M
  php_value memory_limit        128M
</Directory>

Alias /phpmyadmin /usr/share/phpmyadmin
#Alias /phpMyAdmin /usr/share/phpmyadmin
#Alias /mysqladmin /usr/share/phpmyadmin
  • Allow from all としているが、固定IPがある場合はアクセス制限をかけた方が良い。
  • Allow from all にした場合は、最低限のセキュリティーとして Basic 認証をかける。
  • php_value … は、phpMyAdmin で大きなファイルをインポートする場合に設定が必要。
  • Alias … は、推測不能な文字列の方が良い。最近、phpMyAdmin を狙った悪質な bot がいるようです。

blowfish_secret という項目をランダムな文字列に変更

sudo vi /usr/share/phpmyadmin/config.inc.php
$cfg['blowfish_secret'] = '..................'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

apache リロード

sudo /etc/init.d/httpd reload
  or
sudo /etc/init.d/httpd start

接続テスト

http://<DOMAIN>/phpmyadmin/

eaccelerator のインストール

sudo yum --enablerepo=remi,epel install php-eaccelerator

確認

php -v
PHP 5.3.6 (cli) (built: May 16 2011 19:18:05)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
    with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator

自動起動設定

sudo chkconfig httpd on
sudo chkconfig mysqld on
chkconfig --list | grep -E "httpd|mysqld"

再起動させて、正しく自動起動しているか確認する

sudo shutdown -r now

ログイン後、確認

pstree | less



server/sakura_vps/lamp.txt