OpenPNE3インストールメモ

環境情報

とあるVPSサーバです。。

作業前
作業後

環境準備

全然やってなかったのでいろいろ面倒でした

PHPのバージョンアップ(再インストール)

一旦全部アンインストール

yum remove php*
yumのレポジトリを追加
  • remi
cd /etc/yum.repos.d/
wget http://rpms.famillecollet.com/enterprise/remi.repo
  • epel
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
PHP5.3のインストール
yum --enablerepo=epel install libedit
yum --enalberepo=remi install php
yum --enablerepo=remi install php-mbs* php-XML* php-pcre*  他にもいろいろ OpenPNEに必要なパッケージを。
yum --enablerepo=remi install php-mysql

依存性の問題でインストールされない・・
yumは「依存性無視」というオプションがないそうなので

  • ダウンロードだけできるutilityをインストール
yum install yum-utils
yumdownloader --enablerepo=remi php-mysql

rpmで依存性を無視(--nodeps)してインストール

rpm -ivh --nodeps php-mysql-5.3.5-1.el5.remi.1.i386.rpm

PHPからMysqlに繋がらない・・・
apacheのエラーログを見ると

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/mysql.so' - libmysqlclient.so.16: cannot open shared object file: No such file or directory in Unknown on line 0

依存性を無視してphp-mysqlを入れたが、php-mysql同梱のmoduleはlibmysqlclient.so.15で、libmysqlclient.so.16が必要なようだ・・

MysqlをUpdateしてみる
  • Mysqlのアップデート
yum --enablerepo=remi update mysql

エラーは出ず。つながったようだ。

OpenPNEのインストール

ファイルの配置
cd /usr/local
  • zipファイルをダウンロード
wget http://github.com/openpne/OpenPNE3/zipball/OpenPNE-3.2.7.4 

証明書がナントカカントカ・・
無視する

wget http://github.com/openpne/OpenPNE3/zipball/OpenPNE-3.2.7.4 --no-check-certificate
  • 解凍 → リネーム
(pwd → /usr/local)
unzip openpne-OpenPNE3-OpenPNE-3.2.7.4-0-g9e16c04.zip
mv openpne-OpenPNE3-9e16c04 openpne
ln -s /var/www/html/pnesns /usr/local/openpne/web
やっとインストールだ・・
./symfony openpne:install

あれ?いきなりエラー

PHP Warning:  require_once(/usr/local/openpne/config/ProjectConfiguration.class.php): failed to open stream: No such file or directory in /usr/local/openpne/symfony on line 13

ProjectConfiguration.class.php がないみたい。sample付きがあったのでそれをコピー

cp ProjectConfiguration.class.php.sample ProjectConfiguration.class.php

あれあれ?またエラー

Installation of "opAuthMailAddressPlugin" plugin failed: unable to unpack /usr/local/openpne/cache/.pear/opAuthMailAddressPlugin-1.1.4.1.tgz

これはPHP5.3だと起こるエラーらしい。(OpenPNE同梱のPEARのtar.phpが古い)

  • PEARPHPといっしょに入れていたのでそこからコピー
cp /usr/share/pear/Archive/Tar.php /usr/local/openpne/lib/vendor/PEAR/Archive/Tar.php

さて、もう一度

./symfony openpne:install

できたみたいだ・・けど
あららら、、なにやらWarnが

Warning: symlink(): No such file or directory in /usr/local/openpne/lib/vendor/symfony/lib/task/sfFilesystem.class.php on line 224

これはhttpd.confでのmod rewriteの許可がないと出るそうです

<Directory "/var/www/html/pnesns">
    AllowOverride All

</Directory>

アクセスしてみる

http://myRentalServer/pnesns/

とりあえずログイン画面はでた。
今日はここまで。