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
1 2 3 4 5 6 |
> 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中のプライベートネットワーク設定のコメントを外す。
1 2 3 |
# 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を再起動。
1 |
> vagrant reload |
pingが通るか確認。
1 |
> ping 192.168.33.10 |
必要なパッケージのインストール
rpmforgeリポジトリをインストール。
1 |
# rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm |
必要なパッケージをインストール。
1 |
# 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をインストール。
1 2 3 4 5 6 7 |
# 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のバージョンをチェック。
1 2 3 4 |
# 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へ移動する。
1 2 3 |
# unzip phpmotion.zip # cp -r phpmotion/* /var/www/html/ # cp phpmotion/.htaccess /var/www/html |
ファイルやディレクトリのパーミッションを変更する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# 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の設定
1 2 3 4 5 6 7 8 |
# /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の設定
1 2 3 4 5 |
# vi /etc/my.cnf [mysqld] default-character-set = utf8 [mysql] default-character-set = utf8 |
データベースとユーザーを作成する。
1 2 3 4 5 6 |
# /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の設定
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# 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を起動する。
1 2 |
# /etc/rc.d/init.d/httpd start # /sbin/chkconfig httpd on |
ここまでの作業がうまく出来ていれば、ブラウザから初期設定できるようになる。
続く・・・