Windows+IISでOpenPNEを動かしてみます。

DBは、MySQLを利用します。

OSは、Windows2003Serverで行いました。


1.モジュールのダウンロード
OpenPNE-2.12.6.zip(http://www.openpne.jp/

php-5.2.8-Win32.zip(http://www.php.gr.jp/

mysql-5.1.30-win32.zip(http://www-jp.mysql.com/


2.IISのセットアップ
WindowsにIISをセットアップする。


3.PHPのインストール
3.1 解凍
ダウンロードしたZIPファイルをC:\PHPに解凍します。


3.2 ファイルのコピー
C:\php\php.ini-dist を C:\Windows にコピーし、ファイル名を php.ini に変更します。

C:\php\php5ts.dll を C:\Windows\system32 にコピーします。

C:\php\php*.dll 以外の *.dll を C:\Windows\system32 にコピーします。


3.3 設定ファイルの編集
C:\Windows\php.ini をテキストエディタで開き、以下を編集します。



include_path = ".;c:/php/includes;c:/php/pear"
doc_root = "C:/Inetpub/wwwroot"
extension_dir = "c:/php/ext"
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
output_buffering = On
output_handler = mb_output_handler
default_charset = Shift_JIS
mbstring.language = Japanese
mbstring.internal_encoding = SJIS
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
magic_quotes_gpc = Off



4.IISの設定
IIS を起動し、「規定の Web のサイト」で右クリック→「プロパティ」を選択します。


「規定の Web のサイトのプロパティ」が開くので「ISAPI フィルタ」タブを選択し、
「追加」ボタンを押します。


「フィルタのプロパティ」が開くので以下のように設定し、「OK」ボタンを押します。
・フィルタ名 :php
・実行ファイル:C:\PHP\php5isapi.dll


「規定の Web のサイトのプロパティ」に戻るので「ホームディレクトリ」タブを選択し、
「構成」ボタンを押します。


「アプリケーションの構成」が開くので「追加」ボタンを押します。


「アプリケーションの拡張子マッピングの追加 編集」が開くので以下のように設定し、
「OK」ボタンを押します。
・実行ファイル:C:\PHP\php5isapi.dll
・拡張子   :.php
・動詞    :制限を選択
        GET,HEAD,POST,TRACE


左のツリーから[WEBサービス拡張]をクリックします。

[新しい Web サービス拡張を追加]をクリックします。

拡張子にPHPを入力し、

必要なファイルの[追加] ボタンをクリックします。

C:\PHP\php5isapi.dll

を指定します。

[拡張の状態を許可済みに設定する]にチェックを入れて[OK]を押します。


5.PHPの動作確認
C:\Inetpub\wwwrootに以下の記述をしたphpinfo.phpというファイルをテキストエディタで作成します。
<?php phpinfo(); ?>

ブラウザを立ち上げ、http://localhost/phpinfo.php を指定します。
以下のような画面になれば PHP のインストールは成功です。


6.MySQLのインストール
6.1 インストール
zip を解凍して Setup.exe を実行します。

setup type を Custom として、インストール先を C\:MySQL\に変更します。

Next、Installをクリックします。

続いてウィザードが起動するのでデフォルトのままNext、Next、Next、Finish。

Configuration Wizardが起動したらNext、Next

ServerTypeで[Server Machine]を選択し、Next。

しばらくNext、Next、Next、Next、

default character set に [Best Support For Multilingualism] を選択し、Next。

Next。

Security Optionsで[Modify Security Settings]にチェックを入れ、

PW:****

で作成。

[Enable root access from remote machines]にチェックを入れれば外部からrootのIDで接続できる。

開発環境の場合はチェックを入れていると楽。

Next。Execeute。


6.2 環境変数の追加
マイコンピュータのプロパティを開きます。

[詳細設定]タブをクリックし、[環境変数]ボタンをクリックします。

[システム環境変数]の中からPathを選択し、[編集]をクリックします。

[変数値]の最後に以下の記述を追加します。

;C:\MySQL\Bin

[OK]をクリックします。[OK]を押して、画面を閉じます。

システムを再起動します。



7.OpenPNEのインストール
7.1 config.php
ZIPをC:\Inetpub\wwwroot\OpenPNEに解凍します。

C:\Inetpub\wwwroot\OpenPNEの下にbinフォルダがくるようにします。

C:\Inetpub\wwwroot\OpenPNE\config.php.sampleを同一フォルダにコピーして、

config.phpにリネームし、テキストエディタで編集します。



// Web上の絶対パス(URL)(最後にスラッシュを付けてください)

define('OPENPNE_URL', 'http://192.168.1.222/OpenPNE/public_html/');


// DBサーバ設定

$GLOBALS['_OPENPNE_DSN_LIST']['main'] = array(

'dsn' => array(
'phptype' => 'mysql',
'username' => 'root',
'password' => '****',
'hostspec' => 'localhost',
'database' => 'pne',
'new_link' => false,
),
);


// DB暗号化キー(56バイト以内のASCII文字列)

define('ENCRYPT_KEY', 'test');


// メールサーバードメイン

// 携帯メール投稿の宛先などのドメイン名に使われる

define('MAIL_SERVER_DOMAIN', 'test.com');



// アップロード画像のファイルサイズ制限(KB)

define('IMAGE_MAX_FILESIZE', 1000);


// ファイルアップロード機能を使用するかどうか

define('OPENPNE_USE_FILEUPLOAD', true);


// アップロードファイルのファイルサイズ制限(KB)

define('FILE_MAX_FILESIZE', 3000);



7.2 データベースの設定
DOSプロンプトを起動し、以下のコマンドを実行します。

mysql -u username -p

mysql> CREATE DATABASE `DBNAME` DEFAULT CHARACTER SET utf8;

mysql> exit;


CD C:\Inetpub\wwwroot\OpenPNE\setup\sql\mysql41\install

mysql -u root -p --default-character-set=utf8 pne < install-2.12-create_tables.sql

mysql -u root -p --default-character-set=utf8 pne < install-2.12-insert_data.sql

cd ../option

mysql -u root -p --default-character-set=utf8 pne < pnebiz-header.sql


7.3 フォルダのアクセス権設定
C:\Inetpub\wwwroot\OpenPNE\varに、インターネットゲストアカウントに対してフルコンを与えます。

varフォルダのプロパティを開き、[セキュリティ]タブをクリックします。


インターネットゲストアカウントが無い場合は、[追加]ボタンをクリックして、[場所]がローカルコンピュータのコンピュータ名になっていることを確認して、[詳細設定]ボタンをクリックします。

[今すぐ検索]をクリックします。


IUSER_コンピュータ名を選択し、[OK]をクリックします。

追加されたアカウントに対して、フルコンにチェックを入れます。

[OK]をクリックします。


7.4 ソース修正
一括変換ソフトでphpのソースを修正します。

(1)
action="./"

action="./index.php"

に変換。


(2)
OPENPNE_DIR\webapp\lib\smarty_plugins\function.t_form.phpの

<form action="%s" method="%s"

<form action="%sindex.php" method="%s"

に変換。


(3)
\webapp\lib\util\image.php

if (!file_exists($upfile['tmp_name'])) {

if (!is_uploaded_file($upfile['tmp_name'])) {

に変更。


同じようにfile_existsとなっている部分を変更する

\webapp\lib\util\image.php(320行目)
if (!file_exists($upfile_obj['tmp_name'])) {
\webapp\modules\pc\page\h_album_add_confirm.php(49行目)
 if (file_exists($upfile_obj["tmp_name"])) {
\webapp\modules\pc\page\h_com_add_confirm.php(68行目)
if (file_exists($upfile_obj["tmp_name"])) {

(4)
chmod($filepath, 0644);

//chmod($filepath, 0644);

に変換。


8.動作確認
http://localhost/OpenPNE/public_html/index.php?m=setup

にアクセスし、SNS名、初期メンバー、管理用アカウントを設定します。


設定が終わったら、

http://localhost/OpenPNE/public_html/index.php

にアクセスし、ログインして動作確認を行います。




9.管理サイト
http://localhost/OpenPNE/public_html/index.php?m=admin