インストール
各種インストーラDLして入れておく
現在ではOpenPNE-3.6.4が最新?
※3.8.Xがリリースされてます。
セキュリティ
同じ様なテーマで作業ログ残してるブログを参考にすすめてみる。
参考:http://d.hatena.ne.jp/s_kaneda/20090603/1244016722
上述の参考URI上にあるリンクのXAMPPのインストールから設定まわりは古過ぎて参考にならず。
MacOS LionにはUtilityにDirectory なんちゃらってのが無い。
ターミナルからsudoでセキュリティの設定を行う。
参考:http://www.youtube.com/watch?v=BPjpRzdrug8
XAMPPのファイルをターミナルからいじる
作業はすべてsudoで行う
sudo vim /Applications/XAMPP/etc/httpd.conf
ファイルを開いたらset numberで行数を表示。
可能な限り何行目にどんな設定があるのかを把握しておく。
最後尾のコメントアウトを削除。vim は Ctrl + d でページ送り
vhostで設定したのディレクトリがちゃんとhtdocs下で一致している事を確認してからxamppのapacheを再起動。
エラーがあるとxamppがalert投げて知らせてくれる。
openPneのデータベースをインストール
データベースは予め作成しておかなければならない。でないとCreatingTableでこける。
phpmyadminからDBを作成。
DB名はopenpne。
照合順序もutf8_unicode_ci
参考:http://technology.rey-net.com/?eid=1155855
ターミナルから以下を入力する。
sudo php /Applications/XAMPP/htdocs/OpenPNE-3.6.4/symfony openpne:install
require_onceでエラーが出たら、次の事をやってない可能性が高い。OpenPNE-3.6.4/config/ProjectConfiguration.class.php.sampleをコピーしてファイル名から.sampleを抜いたものを用意しておく。
インストールが開始されると青い箱で質問攻め。質問内容は参考URLを参考に。
あれ?インストール中どうしても
PDO Connection Error: SQLSTATE[HY000] [2002] No such file or directory
で止まる。
PDO Connection Error: SQLSTATE[HY000] [2002] No such file or directoryの対策
php.iniの最終行に”pdo_mysql.default_socket=/var/mysql/mysql.sock”を追加してインストール処理を試す。
sudo vim でphp.iniを開く。参考URLではpdo_mysql.default_socketの項目があるようだけど俺のところには無かった。無かった!
結果・・・失敗。
参考:http://yasuwagon.blogspot.jp/2010/12/openpne3-pdo-connection-error.html
mysql.sockを探してそれをインストール時に聞かれるdatabase socket pathに入れる方法
まずソケットの場所を探す。
find / -name "*sock"
ずらずらっと出て来るはずなのでそこからそれっぽいものを採択。
/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock
これをインストール時に聞かれるType database socket path (optional)に入力。
結果・・・成功。
参考:http://weble.org/2011/05/07/openpne-mac-hemtel
成功すると
http://localhost/OpenPNE-3.6.4/web/
からアクセスできるようになる。
途中、手を付けたもの
/config/OpenPNE.yml.sample -> /config/OpenPNE.yml /config/ProjectConfiguration.class.php.sample -> /config/ProjectConfiguration.class.php
ここまででインストール完了と管理画面へのログインはできたものの、ユーザー側のフロントエンドにはいけず。
なので色々見直したところ、OpenPNE.ymlのベースURLが間違っているっぽい事が分かったのでそこを修正してみる。
OpenPNE.ymlのbase_urlまわりを修正
6行目
base_url: "http://example.com" -> base_url: "http://localhost/OpenPNE-3.6.4/web/"
pc_frontend: "https://example.com" mobile_frontend: "https://example.com" pc_backend: "https://example.com" -> pc_frontend: "http://localhost/OpenPNE-3.6.4/web" mobile_frontend: "http://localhost/OpenPNE-3.6.4/web" pc_backend: "http://localhost/OpenPNE-3.6.4/web"
結果・・・以下のエラーがでてAdmin側もアクセス不可能に…。
現在、サーバが混み合っているか、メンテナンス中です。 ご迷惑をおかけいたしますが、しばらく時間を空けて再度アクセスしてください。 Currently, our service is too busy or is under maintenance. We're sorry and please retry accessing later.
ここからbase_urlの最後のスラッシュだけ排除してもう一度インストール
結果・・・アクセス可能に!
しかし、相変わらずログインはできない。
テーブルのPrefixも変更
table_prefix: "" -> table_prefix: "op_"
これは推奨、ということなのでやらなくてもいいっぽいけどやっとく。
最有力の.htaccessを修正する
参考:http://redmine.openpne.jp/issues/201
XAMPPにmcryptを入れる。
mcrypt:暗号化用関数。なぜかxamppのmac版には入ってない。
http://www.weblio.jp/content/Mcrypt+%E6%9A%97%E5%8F%B7%E5%8C%96%E9%96%A2%E6%95%B0
入ってるか確認。
http://forum.tsukaeru.net/viewtopic.php?p=24183
mcryptはhomebrew経由でinstallした。
同様にAPC拡張モジュールを入れる
APC拡張モジュールって何?
apcはhomebrew経由でのinstall方法が良くわからず…。
その後、発見するもhomebrewからだとダメらしい。
http://d.hatena.ne.jp/ken-ton/20111108/1320732105
そしてAPCをinstallするためにのphpizeが機能しない。
これはphp-develをインストールする必要があるらしい…。
日を跨いでるので一度整理。
現在の現象の種類
- ログイン後のページが404
- 管理側は閲覧可能
解決策、原因と思われるものの種類
- APCとmcryptを入れれば解決するかも!
- http://blog.bmoon.jp/diary/tips/server/openpne-3.php
- mcryptはbrew経由でインストール済み
- .htaccessを編集すれば解決するかも!
- 公式:公式のバグ報告
公式の手順を読み返したら実際はなにも編集しなくても
http://example.com/pc_frontend_dev.php
でアクセス出来た。
やっとできた…。
でも相変わらずdev抜きURLではアクセスできないけれどもPluginを製作するにあたっては問題無いね。きっと。