OpenPNE3.0 セットアップ手順
===========================

はじめに
--------

このドキュメントは、 OpenPNE バージョン 3.0 を基にして書かれています。

OpenPNE3 は以下のようなサーバ環境で動作させることを想定しています。

Webサーバ
  Apache 
    * mod_rewrite を使用可能
PHP
  PHP5.2.3 以降
    * PHP の mbstring 拡張モジュールを使用可能
    * PHP の XML 拡張モジュールを使用可能
    * PHP の PCRE 拡張モジュールを使用可能 (UTF-8 サポート)
    * PHP から GD ライブラリを使用可能 (JPEG/GIF/PNG サポート) 
    * PHP の mcrypt 拡張モジュールの使用を推奨
データベースサーバ
  MySQL4.1以降（5.1 以降を推奨）

パッケージをダウンロードして利用する
------------------------------------

ダウンロード
~~~~~~~~~~~~

以下の URL から OpenPNE3.0 のパッケージをダウンロードしてください。(この手順では、 GitHub から入手できる OpenPNE 3.0 のアーカイブでのセットアップはおこなえないのでご注意ください）

https://sourceforge.net/project/showfiles.php?group_id=174268&package_id=307735

その後、 ZIP アーカイブを解凍してください。

ファイルの設置
~~~~~~~~~~~~~~

以下のような構造になるようにサーバ上にファイルを設置してください。

::

  ./
  +-- LICENSE
  +-- NOTICE
  +-- apps/
  +-- cache/
  +-- config/
  +-- data/
  +-- doc/
  +-- lib/
  +-- log/
  +-- plugins/
  +-- symfony
  +-- test/
  
  (ブラウザから閲覧可能)
  +-- web/  (ディレクトリ名は変更可能)
      +-- index.php
      +-- js/
      +-- mobile_frontend.php
      +-- pc_backend.php
        :

データベース作成
~~~~~~~~~~~~~~~~

以下のようなコマンドでデータベースの作成をおこなってください（レンタルサーバなどで既に作成済みの場合は必要ありません）。

::

  $ echo "CREATE DATABASE `DBNAME` DEFAULT CHARACTER SET utf8" | mysql -u root

HTTP プロキシの設定 (3.0.4 以降)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

HTTP プロキシを利用する場合、 config/ProjectConfiguration.class.php の op_http_proxy の設定を以下の例を参考に変更してください。

::

  //HTTP proxy to use when downloading plugin packages
  sfConfig::set('op_http_proxy', 'example.com:8080');

インストールコマンドの実行
~~~~~~~~~~~~~~~~~~~~~~~~~~

以下のコマンドを実行し、インストール作業をおこなってください。

::

  $ ./symfony openpne:install
 
コマンドを実行すると、はじめに、以下の事項の入力を求められます。

*  使用する DBMS （mysql, pgsql, sqlite から選択）
*  データベース名
*  データベースへの接続用ユーザ名
*  データベースへの接続用パスワード（未入力可）
*  データベースサーバのホスト名（localhost など）
* （DBMS に MySQL を選択し、サーバホスト名に localhost を指定した場合）使用するソケットへのパス（未入力可）

以上の事項について入力をおこなうと、インストール作業が自動でおこなわれます。

mod_rewrite の設定
~~~~~~~~~~~~~~~~~~

web/.htaccess の RewriteBase を各自の環境にあわせて編集してください（必要でない場合もあります）。

::

  RewriteBase /                            # もしくは /web など

※RewriteBase には URL の絶対パスを指定してください。

ブラウザからアクセス(PC)
~~~~~~~~~~~~~~~~~~~~~~~~

(1) http://example.com/index.php にアクセス
(2) ログインフォームに sns@example.com / password と入力し、ログインできるかどうか確認

※メールアドレスとパスワードはログイン後に必ず変更してください

ブラウザからアクセス(管理画面)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(1) http://example.com/pc_backend.php にアクセス
(2) ログインフォームに admin / password と入力し、ログインできるかどうか確認 

※メールアドレスとパスワードはログイン後に必ず変更してください

Git から入手したものをセットアップ
----------------------------------

※ symfony1.2 自体のセットアップが完了しており、 symfony コマンドによって自動生成されたプロジェクトに対してWEBブラウザからアクセスできる環境を前提として説明

OpenPNE3 の設置
~~~~~~~~~~~~~~~

::

  $ git clone git://github.com/openpne/OpenPNE3.git
  $ cd OpenPNE3
  $ git checkout origin/OpenPNE-3.0.6
  $ git checkout -b OpenPNE-3.0.6

config/ProjectConfiguration.class.php を編集
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

::

  $ cp config/ProjectConfiguration.class.php.sample config/ProjectConfiguration.class.php
  $ vi config/ProjectConfiguration.class.php

以下の ##SYMFONY_LIB_DIR## を symfony のライブラリ群がインストールされているディレクトリのパスに置換する。
（例：/usr/share/php/data/symfony）

::

    require_once '##SYMFONY_LIB_DIR##/autoload/sfCoreAutoload.class.php';

HTTP プロキシの設定 (3.0.4 以降)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

HTTP プロキシを利用する場合、 config/ProjectConfiguration.class.php の op_http_proxy の設定を以下の例を参考に変更してください。

::

  //HTTP proxy to use when downloading plugin packages
  sfConfig::set('op_http_proxy', 'example.com:8080');

データベース設定
~~~~~~~~~~~~~~~~

以下のコマンドを実行（DSNなどは各自適切なものに変更）

::

  $ echo "CREATE DATABASE `DBNAME` DEFAULT CHARACTER SET utf8" | mysql -u root
  $ ./symfony openpne:install

ブラウザからアクセス(PC)
~~~~~~~~~~~~~~~~~~~~~~~~

(1) http://example.com/pc_frontend_dev.php にアクセス
(2) ログインフォームに sns@example.com / password と入力し、ログインできるかどうか確認

ブラウザからアクセス(管理画面)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(1) http://example.com/pc_backend_dev.php にアクセス
(2) ログインフォームに admin / password と入力し、ログインできるかどうか確認 
