mac@管理者: 2008年2月アーカイブ

OpenPNE(MyNETS)のインストール手順をメモっておく。

環境は以下の通り:
■レンタルサーバ会社名:クララオンライン
■サーバOS名:VPS Triplo (Webmin) / CentOS Linux release 5
■PHPのバージョン:5.1.6
■MySQLのバージョン:5.0.22
■メールサーバ:qmail
■ImageMagick:6.2.8
■gd:2.0.33

インストール手順(添付ドキュメント)を引用しながらすすめていく。


1. ファイルの設置
MyNETSに含まれるディレクトリ、ファイルを以下のようにWebサーバ上に設置してください。

インストーラを利用してインストールする場合は、Webサーバ上への設置が完了したら、設置したURLにブラウザでアクセスし、インストーラの指示に従って下さい。

- OPENPNE_DIR
├ bin-- *.cron[755]
├ lib <--- OPENPNE_LIB_DIR
├ var <--- OPENPNE_VAR_DIR
│ ├ img_cache
│ │ ├ gif [777]
│ │ │ ├ w_h [777]
│ │ │ ├ w_h_raw [777]
│ │ │ ├ w76_h76 [777]
│ │ │ ├ w120_h120 [777]
│ │ │ └ w180_h180 [777]
│ │ ├ jpg [777]
│ │ │ ├ w_h [777]
│ │ │ ... [777]
│ │ └ png [777]
│ │ ├ w_h [777]
│ │ ... [777]
│ ├ log [777]
│ ├ rss_cache [777]
│ ├ templates_c [777]
│ └ tmp [777]
├ webapp <--- OPENPNE_WEBAPP_DIR
├ webapp_ext <--- OPENPNE_WEBAPP_EXT_DIR
├ config.inc.php (OPENPNE_DIR ディレクトリを指定)
├ index.php
...

※[777]は例です。環境に合わせて適切な値に読み替えてください。

ここは大きな問題はなかった。FTPする際に、数点気をつければ良い。

・パッシブモードでアップする。
・バイナリモードをアスキーモードを切り分ける。
両方共に、NextFTPでアップすれば、デフォルトで設定されている通りなので、問題なし。

あとは、パーミッションの設定だけ。パーミッションの設定は、NextFTPでOK。設定に漏れがないかどうかだけ確認すればOK。
しかもMyNETS Ver.1.1.1であれば、インストーラーがついてくるので、インストールした後に、パー未ションのチェックしてくれるので、まあ、まず漏れはないと思う。

2. 設定ファイルの変更 OPENPNE_DIR/conf/config.php.sample を OPENPNE_DIR/conf/config.php にコピーして config.php の方を環境に合わせて編集します。

クララのVPSの場合、OPENPNE_DIRは、
/var/www/html/...
となる。

SNSのURL 28行目 Web上の絶対パス(URL) http://sns.example.com/の部分を、SNSを設置するURLに変更してください。最後にスラッシュを付けてください define('OPENPNE_URL', 'http://sns.example.com/');データベースの設定 30行目 $GLOBALS['_OPENPNE_DSN_LIST']['main'] = array( 'dsn' => array( 'phptype' => 'mysql', 'username' => 'MYSQLサーバのユーザー名', 'password' => 'パスワード', 'hostspec' => 'localhost', 'database' => 'SNS用に作成したデータベースの名前', 'new_link' => false, ), );

ここも、記述通りに、淡々とすすめていけばいいだけの部分。特に、MySQLAdminがあるサーバーであれば、ホストの設定やデータベースの設定も楽なので、ほぼ問題なし。
ただ、ここの説明って、前後してるよな。MySQLの設定の説明より先にこれがでてくるってことは、順に読んでる人には若干混乱の元かも...。

DB暗号化キー(56バイト以内のASCII文字列) 42行目 暗号を記入(好きな英数字を入れても大丈夫です) // DB暗号化キー(56バイト以内のASCII文字列) define('ENCRYPT_KEY', ''); サーバで暗号を生成する場合は以下のコマンドで生成ください(CentOS FedoraCore6 にて生成実行確認) $ mkpasswd -l 56 kggqcorgrurylrQts}gpitoqnlqsxcishxdjrq24zjtpyausemhkxtxI

これは、ぶっちゃけ、なんでもいいらしい。

メールのドメイン 45行目 mail.example.comの部分を、使用するメールドメインに変更ください。 // メールサーバードメイン // 携帯メール投稿の宛先などのドメイン名に使われる define('MAIL_SERVER_DOMAIN', 'mail.example.com');

実は、ここがちょっと山場なのだけど、後述するので、保留。

GoogleMap API KEY 設置するサイト用のGoogleMapKeyを取得してください。 * 申請先URL:http://www.google.com/apis/maps/signup.html 401行目に取得したキーを記入してください。 // Google Maps API key /// define('GOOGLE_MAPS_API_KEY', '取得したKEYをここに記入してください');

ここは、書いてある通りにすすめれば、ほぼ問題なし。但し、登録サイトが英語なので、これだけ注意かな。あと、サブドメイン名がついてる場合は、www.とかを記入忘れないように。

スキン設置ディレクトリ スキンの変更はFTPにより行います。 スキンディレクトリの設置場所について * OPENPNE_DIR/skin/[skin任意のディレクトリ名]/img/以下に、スキン素材を保存します。 (このディレクトリ内で足りない素材は、skin/default/img/以下のファイルが補完をします。) * 設置ディレクトリおよび設置スキンのパーミッションを777に変更します。 $ chmod -R 777 OPENPNE_DIR/skin/[skin任意のディレクトリ名]/img/
これは、後でも設置可能なので、後回し。パーミッションは先に変更しておこうね。
3. サーバ設定 レンタルサーバ等で設定済みの場合は読み飛ばしてください。

3-1. Apacheの設定
httpd.confを修正し、

DirectoryIndex に index.php を追加します。
OPENPNE_DIR にアクセスできるようにドキュメントパスを通します。
[設定例]

バーチャルホストを使ったhttpd.confの設定

ServerName openpne.example.com
DocumentRoot /home/username/OPENPNE_DIR/
DirectoryIndex index.html index.php

httpd.confを修正したら、Apacheを再起動してください。
設定は設置した環境に合わせて行ってください。

これは、設定しなくても動いた。ってことは、設定は必要ないらしい。

後は、明日にしよう...。

<<栞>>

世の中に、レンタルサーバーは多々あれど、要望を全て満たすレンタルサーバー会社があるかといわれると、なかなかないもので、これまた色々検索した結果、今使用している会社は以下の通り。それぞれの特色と利点、不利な点をあげておく。

クララオンライン→クララオンライン
2000年頃から使用しているレンサバ会社。以前は格安共有サーバープランもあったが、最近はミドルクラス以上のプランしか用意されていない。最近の相場としては、若干価格が高めだが、サポート対応やセキュリティに対する姿勢などがしっかりしており、評価は高い。サーバー構成等も若干カスタマイズ依頼が可能なので、特定の目的で、セキュリティ面でうるさい方面では安心。回線速度は普通。
 利点:サポート体勢がしっかりしている(共用サーバー以外なら電話でのサポートもあり)。サーバーメンテナンス情報等の発信がきちんとしているため、サーバー停止されると困るサイトには必須。VPS以上なら、サーバー管理にカスタマイズの幅が広い。
 欠点:価格が高い。VPS以上だと、簡単な変更でもある程度の専門知識を要求される。回線が遅め。

X-server→X-server
2007年から使用開始したレンサバ。共用サーバーのみだが、格安でかつ回線速度の速さが売り。さらに、マルチドメイン(無制限)、メールアドレス、サブドメイン無制限、MySQL(最高プランで6つまで)、PHPも使えて、コントロールパネルでほとんどのドメイン・サイト管理ができるのが非常に評価高。かつ、契約開始等も、クレジットカード決済であれば、自動システムで、即使用可能になる等、素早い対応が嬉しい。特に、コントロールパネルは優秀。特に文系の方にオススメ。共用サーバーの為、機能に制限があるので、その制限内であれば、最高のパフォーマンスだと思う。
 利点:回線が早い。XoopsやMovableType等の自動インストールが用意されており、コントロールパネルの仕様も含めて、文系人間には最適。専門知識をほとんど必要としない。メール転送機能に、転送先にphp等のcgiを指定することができる。試用期間が用意されているので、決済前に機能を確認できるのが嬉しい。xoopsやMovableType(このブログね)等の自動インストール機能が文系人間には嬉しい。これだけで何時間という節約になる。
 欠点:サーバーの規格が画一的でカスタマイズがきかない。共用サーバーの為、同一サーバーに負担がかかると(特に、xoopsやwiki等)、一時的にリソース不足でInternal Server Errorが起こることがある。メールのキャッチオール機能がない。(追記)共有サーバーなので、当たり前だが、SSH接続ができない。

Xrea→Xrea
X-serverに、キャッチオール機能(ある特定のドメインに送られるメールを全て受信するアカウントを用意すること)ができなかったため、今年に入って契約したレンサバ。OpenPNEをインストールする場合、Sakuraインターネットと人気を分かつ会社らしい。無料サーバーも用意されており(現在は募集はしていないらしいが)、入りやすさは上々。X-serverと同じく、クレジットカード決済であれば、即コントロールパネルが使用可能になる。やはり試用期間が用意されているので、決済前に機能を確認できるのが嬉しい。フォーラム形式でサポートを行っているのも特徴。会員制になっているらしく、サービスを利用する際には、無料有料問わず、会員登録が必要になる。
 利点:とにかく安い。X-serverに並ぶコンパネの性能。機能自体はX-serverより上かも。但し、使い勝手はX-serverの方が上手。キャッチオール機能がある。(OpenPNEのメール投稿機能には必須)。フォーラムが充実しているので、情報は多い。
 欠点:サイト自体が雑然としている。会員登録とサーバー申込が混同して、分かりにくい。使用方法の説明も、文系人間には分かりにくい部分がある。サポート体勢がフォーラム中心なので、余計分かりづらい。キャッチオール機能はあるが、メール転送先に、phpを指定することができない。

(蛇足)
そういえば、最初にレンサバを借りたのは、1996年位の頃で、まだレンサバも一般化していないころだったんだよな~。digitalbuilding.comという格安レンサバのDMに誘われてドメイン取得したのが最初のはず。メールログを見ると、98年くらいのまで形跡が残っているけれど、多分もう少し前からだったはず。この会社、2000年頃から反応しなくなって、やばいな~と思い始めて、クララオンラインに鞍替えしたんだった。ドメインの移管作業もなかなか大変な思いをした覚えが...。

サイト構築するにあたって、目的により、ツールも異なっていると思った。
色々調べた結果として、無料で使えるツールがかなりあり、多岐に渡っていることが分かったためだ。その目的と、ツールを分類してみる。

日記(ブログ)だけつけたい→Movable Type、Serene Bach

mixiのようなSNSを構築したい→OpenPNE、MyNETS、So-netSNSサービス

BBS、掲示板、アルバム、その他沢山の機能を同時に実現し、かつ、カスタマイズしたい→Xoops

おおまかに分類するとこんなとこか。

正直、プログラミングなど無理、htmlまではなんとかきたけど、javascriptでさえ書けない文系直系の自分としては、プログラマーな人にお願いするしか、動的サイト構築なんてことはできなかったのに、これだけのツールがある現在って、本当にいい時代になったもんだな~という感がひとしお...。オープンソース万歳なのだ^^。

ただ、考えてみれば、サポートする方も、敷居が下がった方が、サポートもカスタマイズもやりやすい訳で、結局はどっちの為にもなってるんだな~、と思う最近であった。

ちなみに、上記ツールを、インストール等の設定なども含めた、敷居の高さの順で並べ替えると、こんな感じかな...。

(敷居)低:So-netSNSサービス>>>Serene Bach>>>Movable Type>Xoops(本体と基本モジュールのみ)>>>OpenPNE or MyNETS>Xoops(複雑な構成にするなら):高

So-netSNSサービスはサーバーから何から全て用意されており、しかも無料。ほぼ専門知識は不要。ただし、せっかく作ったコンテンツが他人のサーバーに入るのは嫌、という人向きではない。Serene Bachは、perlで書かれてるので、SQLやPHPの使えない共用サーバーにもインストールできる。Movable Typeからは、サーバーやSQLやPHPが必須になる。若干専門知識が必要になるだろう。Xoopsも専門知識は必要だが、自動インストールサービスのあるレンサバがあったり、専門書が比較的多いので、なんとかやれると思う。OpenPNE or MyNETSについては、まだ専門書も少なく、文献をほとんどweb上で調べなければならないので、少々敷居高い。ただし、一度インストールしてしまえば、ほぼ問題なし。カスタマイズできる範囲も狭い。Xoopsについては、基本モジュールまでは、敷居は低いが、それなりに使えるようにするためには色々とモジュールもインストールしなければならないので、複雑な構成にするなら、結構大変。カスタマイズの幅が広いという意味では使い勝手は良いと思う。

ちなみに、So-netSNSはOpenPNE本家のソースを使っている。

で...

| | トラックバック(0)

他のサイトについては、デザインや内容について、色々カスタマイズしていくのだけれど、ここについては、記録を残すこと以外に考えていないので、基本的にはカスタマイズしない予定。
ほぼ、MovableTypeのデフォルト。なので、ずーと、無味乾燥の予定。

とりあえず。

| | トラックバック(0)
サイト構築につき、ここに記載していく。

OpenPNE(UsagiVer.)--cron設定

| | トラックバック(0)

cronの設定にも一苦労。
マニュアルには、

3-3. cronの設定
[設定例]

/etc/crontab に以下を記述。

# 6時にメールを送信&20分毎にRSS更新
00 6 * * * root sh OPENPNE_DIR/bin/tool_send_dairy_news.cron OPENPNE_DIR/bin/ [bin_path]/php
00 6 * * * root sh OPENPNE_DIR/bin/tool_send_birthday_mail.cron OPENPNE_DIR/bin/ [bin_path]/php
00 6 * * * root sh OPENPNE_DIR/bin/tool_send_schedule_mail.cron OPENPNE_DIR/bin/ [bin_path]/php
*/20 * * * * root sh OPENPNE_DIR/bin/tool_rss_cache.cron OPENPNE_DIR/bin/ [bin_path]/php
[bin_path]はphpをインストールしたbinディレクトリ(例えば、/usr/local/bin)です。

とあるのだが、クララオンラインWebminのcron設定は、crontabに書き込むのではなく、webminで登録できる。
これは、これで楽で良いのだが、設定が若干異なる。

まずは、OPENPNE_DIRディレクトリーは、
/var/www/html/sns/
でOK。shコマンドは必要ないようだ。
.cronで止めて入力してみると、エラーがでる。
例えば、tool_send_dairy_news.phpというコマンドがありませんとでる。
tool_send_dairy_news.cronを見てみると、


#! /bin/sh
cd $1
$2 tool_send_dairy_news.php > /dev/null

となっている、単純な命令文。tool_send_dairy_news.phpが見つからないというから、多分、絶対パスが必要なのだろうと、

#! /bin/sh
cd $1
$2 /var/www/html/sns/bin/tool_send_dairy_news.php > /dev/null

に変更。やっぱり動いた。

※実行環境がcron依存のため、シェルコマンドでパスをわたしてやらなければならない。
しかし、またエラー。phpを理解していないようだ。

そこで、ウェブで調べてみると、どうも、これはcronコマンドではなく、無理矢理phpを走らせるというやり方らしく、
※シェルスクリプトから起動させるのは常套手段。PHPをコマンドとして使用するのがある意味無理矢理という意味らしい。通常だと、perlやRuby等を使うのが普通らしい。
.cronの後に、phpのありかを宣言してやらなくてはならないらしい。
※上記にも書いたとおり、cron依存であるため、環境変数をわたす必要があるので、phpのパスをわたすのは必須。本来あるパラメーターを略してはいけないということ。
なので、
/var/www/html/sns/bin/tool_send_dairy_news.cron /var/www/html/sns/bin/ usr/bin/php
という命令文になる。とりあえず、動いた。

防忘録:サイト関係リンク先

文系のためのXOOPS入門→ここ秀逸

グーグルマップ

XOOPS Cube日本サイト

などなど...。

公私共に色々ありまして、SNSページやら、Wikiページやらつくってます。
折角なので、ここで、メモ代わりに色々記載しておきます。

最初に見つけたブログシステムがこのページでも使っている

Bach

次に探したのが、サイト構築ではあまりにも有名なxoopsです。
Xoops

で、今度は、SNSページもほしいな、と思って探しましたら、ありました。
mixiクローンで、
OpenPNE
株式会社手嶋屋さんが中心となって開発中のオープンソースシステムです。

で、OpenPNEが使いやすそうで、意外にカスタマイズが難しいことに気が付いたので、また探したら、ありましたw

Mynets
これは、OpenPNEから枝分かれしたプロジェクトで、Usagi Projectという形で別開発されているようです。ベースはOpenPNE2.4系そのもののようです。

色々つくらなくてはならないページがあるので、現在、同時進行でそれぞれを使い分けてます。