Category: Infra

LAMP環境構築 – Live Commerce

 

Live Commerce 1.3
CentOS 5.5 x86_64 Sakura Internet VPS  
Apache 2.2.3 ・mod_rewrite  
MySQL 5.0.7    
PHP 5.2.17 ・Zend Framework 1.8以上
・Zend Optimizer
・GD library
・mbstring
・iconv
・PDO
・mcrypt
・dom
■PHP高速化
■サムネイル表示

 

Apache

①インストール
# yum install httpd httpd-devel -y
 
②自動起動設定
# chkconfig –level 345 httpd on
 
③バージョン確認
# httpd -v
 
④モジュール確認
# httpd -l
 
⑤起動
# /etc/init.d/httpd start
 
/etc/httpd/conf/httpd.conf
[default]
——————————————–
DocumentRoot "/var/www/html"
——————————————–
 

MySQL

①インストール
# yum install mysql-server
 
②自動起動設定
# chkconfig –level 345 mysqld on
 
文字セットのUTF-8設定(追加)

# vi /etc/my.cnf

——————————————–

[client]
default-character-set=utf8
 
[mysql]
default-character-set=utf8
 
[mysqldump]
default-character-set=utf8
——————————————–
 
④起動
# /etc/rc.d/init.d/mysqld start
 
⑤root のパスワード設定
# mysql -u root
mysql> UPDATE mysql.user SET Password = PASSWORD('設定するパスワード')  WHERE User = 'root';
mysql> FLUSH PRIVILEGES;
mysql> quit
 
④再起動

# /etc/rc.d/init.d/mysqld restart
 

 PHP

①インストール(5.1.6)
# yum install php php-devel php-mbstring php-mysql php-pdo php-mcrypt php-pear php-xml -y
 
②Apache再起動
# /etc/init.d/httpd restart
 
③バージョンチェック
# php -v
 
④モジュールチェック
# php -m
 
⑤PHP 5.2.17へバージョンアップ
# rpm –import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
 
⑥リポジトリに下記を追加
# vi /etc/yum.repos.d/utterramblings.repo
——————————————–
[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=0 0 → 1 にすると常に非公式リポジトリを参照
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
——————————————–
 
⑦リポジトリを指定しPHPをアップグレード
# yum –enablerepo=utterramblings update php
 
⑧バージョン確認
# php -v
 
⑨mcryptモジュールのアップデート
# yum –enablerepo=utterramblings update php-mcrypt
 
⑩Apache再起動

# /etc/init.d/httpd restart
 
⑪GDモジュールのインストール
# yum install php-gd
 
(php -common などのエラーが出た場合)
⑫一度、php -common を削除
# yum remove php -common
 
⑬再度GDモジュールをインストール(php -common 同時インストール)
# yum install php -gd
 
(その後、PHPのバージョンが5.1.6に戻ってしまった場合)
⑭再度、⑤と⑦を繰り返しPHP5.2.17をインストール
 
⑮Apache再起動

# /etc/init.d/httpd restart
 
⑯モジュールのインストール確認
# php -m
 
(その他、エラー発生時足りないモジュールをインストール)
$ yum install gcc-c++
$ yum install httpd-devel
$ yum -y install bzip2\*
$ yum -y install gd gd-devel freetype freetype2 libpng libmng\* libtiff\* libjpeg\* libc-client\* giflib\*
$ yum install aspell-devel
$ yum install mysql-devel
$ yum install libmcrypt-devel
$ yum install unixODBC unixODBC-devel
$ yum install libxml2-devel
$ yum install openssl-devel
$ yum list pcre*
$ yum install pcre-devel -y
$ yum install curl-devel -y
$ yum install gmp-devel -y
 
※注意
php-5.2.17.tar.gz をダウンロードし ./configure, make, make install でインストールすると libphp5.so が作られないというバグがあるためPHPが動作しない。
 

Zend Framework

①サイトから会員登録後、ダウンロード
 
②解凍
$ tar zxvf ZendFramework-x.xx.x
 
③配置
$ mv ZendFramework /opt
 
④設定(追加)
$ vi /etc/php.ini
———————————————————————-
; zendframework
include_path=".:/opt/ZendFramework/library"
———————————————————————-
 
⑤Apache再起動

# /etc/init.d/httpd restart
 
※上記で動作しない場合は、public_html/.htaccessファイルに下記を追加
—————————————————————————
php_value include_path ".:/opt/ZendFramework/library"
————————————————————————–
 

Zend Optimizer

①サイトからダウンロード(x86_64)
ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz
 
②解凍
# tar zxvf ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz
 
③移動
# cd ZendOptimizer-3.3.9-linux-glibc23-x86_64/data/5_2_x_comp
 
④ファイルを指定場所へコピー
# cp -pr ZendOptimizer.so /usr/lib64/php/modules/
 
⑤移動
# cd /etc/php.d
 
⑥optimizer.iniの設定
# echo "; Enable Zend Optimizer extension module
zend_extension=/usr/lib64/php/modules/ZendOptimizer.so" > optimizer.ini
 
⑦確認
# php -v
————————————————————————–
PHP 5.2.17 (cli) (built: Sep  1 2011 17:22:41)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
    with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies
————————————————————————–
 
⑧再起動
# service httpd restart
 

phpMyAdmin

①phpMyAdminのサブバージョンリポジトリからチェックアウト
# svn checkout https://phpmyadmin.svn.sourceforge.net/svnroot/phpmyadmin/tags/STABLE/phpMyAdmin phpmyadmin
 
②適切な場所に移動
# mv phpmyadmin/ /var/www/html
 
③DBへの接続ファイルを作成
# cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php
 
④権限を変更
# chmod 660 /var/www/html/phpmyadmin/config.inc.php
 
⑤expect をインストール
# yum -y install expect
 
⑥パスワード作成
# mkpasswd -l 46
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 
⑦接続ファイルの編集、追加
# vi /var/www/html/phpmyadmin/config.inc.php
————————————————————————–
$cfg['blowfish_secret'] = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
 
$cfg['Lang']     = 'ja-utf-8';
————————————————————————–
 
⑧所有者の設定
# chown -R root.apache /var/www/html/phpmyadmin/
 
⑨ブラウザ確認
http://{yourdomain}/phpmyadmin
 

VirtualHost

# mkdir /var/www/html/www.domain1.com
# mkdir /var/www/html/www.domain2.com
# vi /etc/httpd/conf.d/vhost.conf
 
NameVirtualHost *:80
<VirtualHost *:80>
    DocumentRoot /var/www/html/www.domain1.com
    ServerName www.domain1.com
    ServerAlias domain.com
    ErrorLog logs/domain1-error_log
    CustomLog logs/domain1-access_log combined env=!no_log
    <Directory "/var/www/html/www.domain1.com">
        AllowOverride All
    </Directory>
</VirtualHost>
 
<VirtualHost *:80>
    DocumentRoot /var/www/html/www.domain2.com
    ServerName www.domain2.com
    ServerAlias domain.com
    ErrorLog logs/domain2-error_log
    CustomLog logs/domain2-access_log combined env=!no_log
    <Directory "/var/www/html/www.domain2.com">
        AllowOverride All
    </Directory>
</VirtualHost>
 
# chown -R admin.admin /var/www/html/
# wget http://www.live-commerce.com/downloads/latest.zip
# unzip latest.zip
# mv live-commerce/* ./
# rm -rf live-commerce
 
DocumentRoot /var/www/html/www.domain1.com
DocumentRoot /var/www/html/www.domain1.com/public_html
 

LiveCommerce on MAMP + ZendFramework Install

Live Commerce(ECサイトCMS) をローカルにインストール時メモ

1、Live Commerce の動作環境に合わせるためにまずは、MAMPのアップデートをする

■動作環境

 

  • PHP 5.2.4 またはそれ以上のバージョン 5.3.系では不可
    • Zend Framework 1.8以上
    • Zend Optimizer
    • GD library
    • mbstring
    • iconv
    • PDO
    • mcrypt
    • dom
  • MySQL 5.0.7 以上
  • Apache 2.X またはそれ以上のバージョン(1.3系でも可)
    • mod_rewrite

2、MAMP & MAMP PRO 1.9.6 にアップデート

  • htdocsディレクトリのBackUpを忘れずに!
  • MAMPの環境設定からPHP5.2へ変更
  • Zend Optimizer にチェックを入れる

3、最新版のZend Framework をインストールする(今回は1.11)

  • MAMPの htdocs ディレクトリに配置
  • ディレクトリ名を zf などに変更
  • /Application/MAMP/conf/php5.2/php.ini の適度な箇所に下記を追加

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

; zeninclude_path = ".:/Applications/MAMP/htdocs/zf/library"

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

4、Live Commerce を手順通りにインストールする

  • すべての環境チェックをクリア
  • 正常にインストールが完了しても、パーミッション関連のエラーがでる場合がある
  • ターミナルからエラー内容のディレクトリを0707または0777に変更する

※ ちなみに今回は Zend Framework のディレクトリや Live Commerce の cache ディレクトリのパーミッションエラーが出た

5、正常に表示される

vi

command movement etc
Mode Change
i カーソル位置の手前から入力モードへ移行  
a カーソル位置の後から入力モードへ移行  
O カーソル位置の上の行に、行を追加し入力モードへ  
o カーソル位置の下の行に、行を追加し入力モードへ  
Esc コマンドモードへ移行  
File
vi FileName ファイル名を指定して、起動 vi -r filename
ファイル修復
:w FileName 名前を付けて保存  
:w ファイルを上書き保存  
:wq ファイルを保存して終了  
:q viを終了  
:q! 保存せずに終了  
:set number 行番号表示  
Cursor
k 上へ移動 5kとすると、5行上へ移動
j 下へ移動 5jとすると、5行下へ移動
h 左へ移動 5hとすると、5文字左へ移動
l(小文字のL) 右へ移動 5lとすると、5文字右へ移動
gg ファイルの先頭行に移動  
10G 10行目へ移動 10は任意の数字
G ファイルの末尾へ移動  
Edit
X カーソルの手前の文字を削除(バッファに記憶) P又はpで張り付け
x カーソル位置の文字を削除(バッファに記憶) P又はpで張り付け
dd カーソル位置の行を削除(バッファに記憶) P又はpで張り付け
P カーソルの手前で張り付け(バッファ内の文字列)  
p カーソルの後で張り付け(バッファ内の文字列)  
u 元に戻す  
yy カーソル行をコピー  
zz 終了(変更されている場合)は保存  
Search/Replace
/検索文字列 下へ検索 n 検索の再実行
?検索文字列 上へ検索 n 検索の再実行
:1,$s/mojiold/mojinew/gc ファイル内の文字を置換え 1=検索開始行、$=検索終了行($は最終行)、
s=置換えoption、
mojiold=検索文字、mojinew=置換え文字、
g=全て置換え(無ければ最初に見付かった文字のみ)
c=置き換える前に確認(無ければ問答無用で置き換え)
:%s/@@@/\\\/g 一括置換 :%s/pattern1/pattern2/g   ( パターン1がパターン2に全て置き換わる)
Editor Customize
set autoindent 改行時に上の行と同じく自動インデントする  
set number 行番号を表示する  
set ruler ルーラー(右下に表示される行・列の番号)を表示する  
set tabstop=数値 タブの大きさを半角スペース数で指定  
set nowrap 折り返し表示しない  
set history=数値 コマンド履歴の保存数  
set backup ファイルを保存する時にバックアップファイルを作成する  
set nobackup バックアップファイルを作成しない  
syntax on | off カラー表示のオンまたはオフ