OpenPne3をインストールしているのですが、Couldn’t locate driver named mysqlと出てインストール出来ません。
php-mysqlが入っていないからだろうと思い、yum install php-mysqlとしたのですが、
The program package-cleanup is found in the yum-utils package. |
と出て、うまく行かず。下記コマンドで確認するとインストール済み。
yum list | grep php-pdo yum list | grep php-mysql |
一旦PHP関係をyum removeでアンインストールして順番にインストール。updateしたのだけれど依存が消えなかったので。
yum install php yum install php-common yum install php-mbstring yum install php-gd yum install php-mcrypt yum install php-mysql |
php-mysqlでPODも一緒にインストールされる。/etc/init.d/httpd stopとstartでhttpdをリスタート。
phpinfo();でPODとMySQLを確認。OK。
./symfony openpne:install |
で再度OpnePneをインストール、おぉー進んだ。なんかコンソールに色がついた。次のエラーは
Fatal error: Call to undefined function sys_get_temp_dir() |
なに、関数が存在しないだと。PHP5.2.3以降・・・yumでのPHPは5.1.6、がっくり。ソースからコンパイルかぁ、2000年前後の時代でもあるまいしまったく。
ということで、もう一度アンインストールして、リポジトリ変えて挑戦。
cd /etc/yum.repos.d wget http://dev.centos.org/centos/5/CentOS-Testing.repo |
ダウンロードした、CentOS-Testing.repoに
priority=1 |
を追加。
yum --enablerepo=c5-testing update php |
でphpをアップデート。httpdを再起動。あれ、phpinfo()で確認しても5.1.6のまま。うーんPHP削除。
yum remove php yum remove php-common |
削除してから
rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka |
して、vi /etc/yum.repos.d/utterramblings.repo
[utter] name=Jason’s Utter Ramblings Repo baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/ enabled=0 gpgcheck=1 gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka |
として
yum --enablerepo=utter -y install php yum --enablerepo=utter -y install php-mysql yum --enablerepo=utter -y install php-mcrypt yum --enablerepo=utter -y install php-mbstring yum --enablerepo=utter -y install php-devel |
でhttpdを再起動。どうだ、5.2.17になった。じゃもう一度OpenPneをインストールと。次は
Fatal error: Allowed memory size of 33554432 bytes exhausted |
だとー。メモリサイズか。これはphp.iniをいじればよさそう。
vi /etc/php.ini
で、
memory_limit = 32M
を
memory_limit = 48M
に変更。またまたhttpdを再起動。気を取り直して
./symfony openpne:install |
さっ、次のエラーは
PDO Connection Error: SQLSTATE[HY000] [2013] Lost connection to MySQL server at 'reading initial communication packet', system error: 111 |
ソケット周りか。ということはまたphp.iniですな。
vi /etc/php.ini
で、
pdo_mysql.default_socket=/tmp/mysql.sock |
を適当なところに追加。httpdを再起動
さて、./symfony openpne:installでインストール。さっ、これでOKでしょう。
Fatal error: Allowed memory size of 50331648 bytes exhausted |
とほほ。増えてんじゃん。えーい、vi /etc/php.ini
memory_limit = -1 |
で上限なしにしてやるー。
やったーインストール完了。こっからどうするのか。
./symfony project:clear-controllers |
で開発用環境ファイル?を削除。
cd ./web
vi .htaccess
で
RewriteBase /sns/
のコメントを外して、OpenPneのパスを決める。OpenPNE3/webを公開フォルダーのsnsでシンボリックリンクを張る。
http://your.url/sns/
でアクセス。
おーとりあえず画面が出たよー。IDとパスワードは何???
sns@example.com
password
でログイン。あれれ、404。
じゃ管理画面は
http://your.url/sns/pc_backend.php
admin
password
こっちは動くな。.htaccess関係かな。なおらん。えーい、ドキュメントルートを変えちゃえ。
vi /etc/httpd/conf/httpd.conf
で
DocumentRoot "/var/www/html/OpenPNE3/web" |
にして
<Directory /var/www/html/OpenPNE3/web> Options FollowSymLinks AllowOverride All </Directory> |
にする。で、.htaccessを再度編集/でアクセスするようにしよう。
RewriteBase /
んで、httpdを再起動して、
http://your.url/
でアクセス。
おー動いたよ。