端くれプログラマの備忘録 PHPmotion [PHPmotion] セットアップする (CentOS 5.9)

[PHPmotion] セットアップする (CentOS 5.9)

PHPmotionは動画共有サイト向けのオープンソースのCMS。

VagrantでCentOSの仮想環境を作ってインストールを試みるが、連携するミドルウェアが多くて一筋縄ではいかず。最初CentOS 7.0で試していたんだけど、バージョンが新しすぎるせいか、標準リポジトリに見つからないミドルウェアが続出。自力で模索するのは諦めて、インストールに成功した事例をネットで探すしたところ、以下の記事がヒット。

» phpmotionインストール(yum編)
http://www.kurobuti.com/linux_server/?page_id=543

ターゲットはCentOS 5と推測し、Cent OS 5.9を用意して記事の手順をなぞらせてもらう。

仮想環境の作成

Boxは以下を選択。

CentOS 5.9 x86_64 minimal + guest additions, puppet, chef
http://tag1consulting.com/files/centos-5.9-x86-64-minimal.box

> vagrant box add centos5.9 http://tag1consulting.com/files/centos-5.9-x86-64-minimal.box
> cd C:Temp
> mkdir centos5.9
> cd centos5.9
> vagrant init centos5.9
> vagrant up

Vagrantfile中のプライベートネットワーク設定のコメントを外す。

# Create a private network, which allows host-only access to the machine
# using a specific IP.
config.vm.network "private_network", ip: "192.168.33.10"

Vagrantを再起動。

> vagrant reload

pingが通るか確認。

> ping 192.168.33.10

必要なパッケージのインストール

rpmforgeリポジトリをインストール。

# rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

必要なパッケージをインストール。

# yum -y install httpd ruby php php-devel php-cli php-gd php-mbstring php-mysql mysql-server automake libtool gcc gcc-c++ flvtool2 ffmpeg ffmpeg-devel mplayer mencoder xvidcore

ffmpeg-phpをインストール。

# wget http://jaist.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.6.2.tbz2
# tar jxvf ffmpeg-php-0.6.2.tbz2
# cd ffmpeg-php-0.6.2
# phpize
# ./configure
# make && make install
# echo "extension=ffmpeg.so" >> /etc/php.ini

PHPmotionのインストール

PHPのバージョンをチェック。

# php -v
PHP 5.1.6 (cli) (built: Nov 6 2014 12:25:07)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

PHPmotionをダウンロード。

Download PHPmotion
http://phpmotion.com/content/view/1/180/
(for servers running PHP5.0.x – PHP5.2.x )

phpmotionを解凍し、/var/www/htmlへ移動する。

# unzip phpmotion.zip
# cp -r phpmotion/* /var/www/html/
# cp phpmotion/.htaccess /var/www/html

ファイルやディレクトリのパーミッションを変更する。

# cd /var/www/html/
# chown -R apache:apache *
# chown apache:apache .htaccess
# chmod 777 addons/
# chmod 777 addons/customprofile/
# chmod 777 addons/customprofile/member_css/
# chmod 777 addons/customprofile/member_images/
# chmod 777 addons/albums/
# chmod 777 addons/albums/images/
# chmod 777 addons/albums/thumbs/
# chmod 777 classes/
# chmod 777 logs/
# chmod 777 pictures/
# chmod 777 temp/
# chmod 777 uploads/
# chmod 777 uploads/avi/
# chmod 777 uploads/thumbs/
# chmod 777 uploads/audio/
# chmod 777 uploads/player_thumbs/
# chmod 777 setup/
# chmod 755 cgi-bin/*
# chmod 755 cgi-bin/audio/uu_default_config.pm
# chmod 755 cgi-bin/audio/uu_ini_status.pl
# chmod 755 cgi-bin/audio/uu_lib.pm
# chmod 755 cgi-bin/audio/uu_upload.pl

PHPの設定

# /etc/php.ini
open_basedir = (no value) 
upload_max_filesize = 100M 
post_max_size = 100M 
max_execution_time = 1500
session.gc_maxlifetime = 14000
safe_mode = off
enable_dl = On

MySQLの設定

# vi /etc/my.cnf
[mysqld]
default-character-set = utf8
[mysql]
default-character-set = utf8

データベースとユーザーを作成する。

# /etc/rc.d/init.d/mysqld start
# /sbin/chkconfig mysqld on
# mysql -u root
mysql> grant all privileges on phpmotionup.* to phpmotionuser@localhost identified by '12345678';
mysql> create database phpmotionup;
mysql> quit

Apacheの設定

# vi /etc/httpd/conf/httpd.conf
ServerName www.example.com:80

<Directory "/var/www/html">
Options Indexes FollowSymLinks ExecCGI ← # 追加
AllowOverride All ← # 変更
</Directory>

#AddHandler cgi-script .cgi
↓変更
AddHandler cgi-script .cgi .pm .pl

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
↓変更
#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

Apacheを起動する。

# /etc/rc.d/init.d/httpd start
# /sbin/chkconfig httpd on

ここまでの作業がうまく出来ていれば、ブラウザから初期設定できるようになる。

続く・・・