-オープンソースのSNSエンジン OpenPNEプロジェクト-

OpenPNE3 をさくらのレンタルサーバにインストールしてみました

05 / 13 水曜日 2009

OpenPNE開発チームの小川です。

OpenPNE 3 のリリース以来、「OpenPNE 3 ってレンタルサーバでも動くの?」という質問をたくさんもらっていましたので、今回はその実証のため OpenPNE 3.0.4 を「さくらのレンタルサーバ」のスタンダードで設置してみました。

結論としてはまったく問題なく設置できたましたので、その手順を紹介します。

インストール手順

MySQL データベースの作成

まず、事前の準備としてさくらインターネットのサーバコントロールパネルから MySQL のデータベースを作成します。

  • ユーザ名(さくらのレンタルサーバのアカウント名と同じ)
  • データベース名(さくらのレンタルサーバのアカウント名と同じ)
  • ホスト名(「mysql***.db.sakura.ne.jp」のような形式)
  • パスワード(自分で入力したもの)

の情報を控えておきましょう。

SSH ログイン

ここからの作業は SSH でサーバにログインして行います。

OpenPNE3 をダウンロード

今回は OpenPNE-3.0.4 の zip アーカイブを使って設置してみます。wget でダウンロード、unzip で解凍します。

%wget "http://nchc.dl.sourceforge.net/sourceforge/openpne/OpenPNE-3.0.4.zip"
%unzip OpenPNE-3.0.4.zip
%ls
MailBox
OpenPNE-3.0.4
OpenPNE-3.0.4.zip
db
sblo_files
www

openpne:install タスクの実行

OpenPNE 3 では、DB のセットアップ・ディレクトリパーミッションの設定・標準プラグインのインストールなどの作業を openpne:install タスクを実行すれば一括で行ってくれます。

さっそく OpenPNE ディレクトリに移動して、タスクを実行してみます。

%cd OpenPNE-3.0.4
%php symfony openpne:install

タスクを実行すると DB のセットアップに必要な情報を聞かれるので、サーバ環境に合わせて入力していきます。

Choose DBMS (mysql, pgsql or sqlite)
使用する DBMS の種類を入力します。
ここでは、「mysql」と入力します。
Type database username
データベースのユーザ名を入力します。
ここではさくらのアカウント名を入力します。
Type database password (optional)
データベースのパスワードを入力します。
ここではコントロールパネルで設定したパスワードを入力します。
Type database hostname
データベースサーバのホスト名を入力します。
ここでは「mysql***.db.sakura.ne.jp」という形式のものを入力します。
Type database port number (optional)
データベースのポート番号を入力します。未入力の場合は DBMS ごとのデフォルト値が使用されます。
ここでは未入力のまま Enter を押します。
Type database name
データベース名を入力します。
ここではさくらのアカウント名を入力します。

最後に入力した内容の確認をします。問題なければ「y」を入力します。

The DBMS                        mysql
The Database Username           (さくらのアカウント名)
The Database Password           ******
The Database Hostname           mysql***.db.sakura.ne.jp
The Database Port Number
The Database Name               (さくらのアカウント名)
The Database Socket

  Is it OK to start this task? (y/n)y

確認が終わると自動的にインストールが進んでいきます。途中 Warning がたくさん表示されてびっくりしますがインストールは問題なく完了しています。(Fatal Errorが表示されて止まっている場合は失敗しています。この Warning エラー表示については今後の開発で改善されるはずです!)

公開ディレクトリの設定

ここでは「http://(アカウント名).sakura.ne.jp/sns/」というURLで設置すると仮定します。(「/sns/」の部分は自由に決めてOK)

.htaccess ファイルを編集します。変更点は2か所です。

%vi web/.htaccess

#Options +FollowSymLinks +ExecCGI    # コメントアウトする

<IfModule mod_rewrite.c>
  RewriteEngine On

  # uncomment the following line, if you are having trouble
  # getting no_script_name to work
  RewriteBase /sns/    # 自分で決めたパス「sns」を入れる

  # we skip all files with .something
  #RewriteCond %{REQUEST_URI} \..+$
  #RewriteCond %{REQUEST_URI} !\.html$
  #RewriteRule .* - [L]

  # we check if the .html version is here (caching)
  RewriteRule ^$ index.html [QSA]
  RewriteRule ^([^.]+)$ $1.html [QSA]
  RewriteCond %{REQUEST_FILENAME} !-f

  # no, so we redirect to our front web controller
  RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

最後に公開ディレクトリにシンボリックリンクを作成します。

%cd ../www
%ln -s ../OpenPNE-3.0.4/web sns

ブラウザからアクセス

ここまででインストール作業は完了です!

ブラウザから「http://(アカウント名).sakura.ne.jp/sns/」にアクセスして OpenPNE 3 のログイン画面が表示されれば OK です。(初期アカウントはセットアップガイドにある通り、sns@example.com / password となっています。変更して使ってください)

また、管理画面は「http://(アカウント名).sakura.ne.jp/sns/pc_backend.php」へアクセスすれば表示されます。(初期アカウントはセットアップガイドにある通り、admin / password となっています。変更して使ってください)

コメント:29

kunk 09-05-15 (金) 16:56

コメントアウトする
って、どういう意味なんですか?

Rimpei Ogawa 09-05-15 (金) 17:16

1行目の「Options +FollowSymLinks +ExecCGI」の先頭に「#」を追加してください。
これにより「Options~」の行が無効になります(行自体を削除するのと意味は同じです)

さくらのレンタルサーバでは .htacess による Options の使用が禁止されているのでここでは無効にしています。

オルト 09-05-15 (金) 19:11

早速、試してみましたが
symfony project エラーが表示されました。

Oops! An Error Occurred
The server returned a “500 Internal Server Error”.

Rimpei Ogawa 09-05-15 (金) 21:33

記事と同一の環境・手順で起こったエラーでしょうか?
「500 Internal Server Error」の場合はさまざまなエラー原因が考えられるので、以下の手順でエラーログの内容を確認してもらえますでしょうか。

(1) web/index.php を dev 環境に変更する
OpenPNE3 の web ディレクトリにある index.php で、’prod’ となっているところを ‘dev’ に変更してしてください。

$configuration = ProjectConfiguration::getApplicationConfiguration(‘pc_frontend’, ‘prod’, false);
 ↓↓↓
$configuration = ProjectConfiguration::getApplicationConfiguration(‘pc_frontend’, ‘dev’, false);

(2) ブラウザから SNS へアクセスする
「500 Internal Server Error」のエラーが表示されたら(3)へ

(3) エラーログを確認する
OpenPNE3 の log ディレクトリに pc_frontend_dev.log というログファイルができていると思いますので、その中で [err] となっている行に直接の原因が記録されているはずです。

オルト 09-05-15 (金) 22:16

ありがとう御座います。
以下のようなLogが残りました。

5 15 22:13:52 symfony [err] {PDOException} SQLSTATE[HY000]: General error: 1193 Unknown system variable ‘NAMES’

オルト 09-05-15 (金) 22:31

申し訳ありません。
SQLのバージョンが、MySQL4.0でした。

Rimpei Ogawa 09-05-16 (土) 0:03

なるほど、MySQL 4.0 だとそこでエラーになるんですね。
動作環境は MySQL 4.1 以降ですので、可能でしたら環境を変えてぜひまたお願いします!
http://www.openpne.jp/openpne3_setup_guide/

Mackey Matsuo 09-05-22 (金) 18:02

私もOpenPNE-3.0.4をマイサーバーへのインストールを何回も試みてるんですが、次のエラーコメントが出てインストールできません。ぜひ、お助けを。
Fatal error: Class ‘DomDocument’ not found in /var/www/OpenPNE3/lib/symfony/plugins/sfPropelPlugin/lib/vendor/propel-generator/classes/propel/phing/AbstractPropelDataModelTask.php on line 428

ちなみにマイサーバーのOSはFedoraCore9です。

chilli 09-05-23 (土) 4:01

私は、
# yum install php-xml
で解決できました。

参考
http://www.php-seed.net/blog/archives/83

Mackey Matsuo 09-05-23 (土) 18:14

chilliさんありがとうございました。解決しました。
ただ、インストールできたものの、今度は「sns設定」がひらかなかったり、初期の sns@example.com でログインできない問題がでてきたり、初心者の悲しさで行き詰っています。よろしかったら、またアドバイスください。妻がフィリピーナだもんで、なんとか英語のSNSがつくりたいんです。よろしく。

pitt 09-05-31 (日) 10:40

さくらスタンダードにインストールしてみました。問題なく入ったように見えましたが、管理画面の「SNS設定」に行くと「You can’t access this page.
Back to previous page」とメッセージが出ます。
何が悪いのでしょうか?

tsukasa 09-06-09 (火) 9:37

私も同じ現象です。
SNS設定で「You can’t access this page.Back to previous page」
アクセス権がらみかと思い、試行錯誤してみましたがどうしてもなおりません。
FreeBSD、Apache2、MySQLです。
解決方法をご教示頂けましたら幸いです。

tsukasa 09-06-09 (火) 9:40
phenom 09-07-02 (木) 17:00

>pittさん >tsukasaさん

私も同じ状況に。。。うちは

example.com/sns/

にインストールするためにmod_rewirteとAlias設定をいじってるので Alias の

Alias /sns *******/web

としてあるのが悪さをしてるのかな~なんて思ってますが、今からちゃんと調べるところです。

phenom 09-07-02 (木) 17:46

追記
Aliasの設定はやめて例と同様にシンボリックリンクにしてみました。でもだめでした。

エラーログに

Action “config/index” does not exist.

とあるのが手がかりっぽいけど。。。

ruphy 09-07-08 (水) 15:10

3.1.0だとインストールできませんでした。
php symfony openpne:install
が動かないようです。
./symfonyが壊れてるのかなぁ

Chaz 09-07-14 (火) 14:40

3.0ってことは携帯に力を入れてるって話でしたよね~
携帯にはいかがなんでしょう?

JJw126 09-07-21 (火) 13:46

現状、さくらレンサバには3.1.0は実装できないとの認識で
よろしいでしょうか?

私もruphy と同様の事象によりインストールができません
3.0.5ですと正常終了いたします

追加手順等ございましたらご教示ねがいます

hirose 09-10-14 (水) 20:54

さくらに3.0.5をインストールしたのですが
私も上の方々と同様に、管理画面のSNS設定で
「このページにはアクセスできません。」と表示されました。

試行錯誤した結果、どうやらsnsというフォルダ名だと
この不具合が発生するようです。
別のフォルダ名を指定すると、正常に表示されました。

既に、解決されているのかもしれませんが
ご報告とさせて頂きます。

phenom 09-11-28 (土) 16:52

>hiroseさん

やはりそうえすよね。。。

そろそろ2系→3系へのコンバータができそうなので、さわってみようかな、と思い、開発用のサーバーに3.2-betaをインストールしてみたのですが、やはりサブディレクトリ名がsnsだとSNS設定にいけないようですね。
m
mod_rewriteの設定をいじったらどうかなるのかも知れません。どなたか解決した方がいるといいのですが、しばらく試行錯誤してみようと思います。

maskin 10-02-17 (水) 4:38

サクラのスタンダードプランで同じようにインストールフォルダで「php symfony openpne:install」とやったのですが、コマンドラインに何も反応が無いんですが、何が考えられるでしょうか

yuro 10-02-20 (土) 18:11

>maskinさん
『symfony』ファイル内で、
『ProjectConfiguration.class.php』ファイルを指定しているのですが、
実際に展開されたファイル名が『ProjectConfiguration.class.php.sample』になっていますので、
後ろのsampleを取ってあげることで、
php symfony openpne:installが実行可能になります。

hosi 10-03-17 (水) 1:36

symfonyが/user/local/lib/に入ってるのでそっちを使いたいのですがどのように設定すればいいですか?

m-fuji 10-03-20 (土) 15:38

OpenPNE3.4をこのページの手順に沿ってインストールしました。インストールは完了し、ブラウザからアクセスすると、”Internal Server Error”が表示されます。OpenPNE3 の web ディレクトリにある index.php で、’prod’ となっているところを ‘dev’ に変更して実行しましたが、”log”ディレクトリにエラーログファイルはできておりません。対処方法を教えてください。

katsu 10-04-06 (火) 2:23

教えて頂きたいことがあります。
インストールを終えて、公開ディレクトリ自分は「SNS」に設定したところにブラウザからアクセスすると
You don’t have permission to access /sns on this server. と出てきてしまいます。
上記の質問回答にあったように、フォルダ名を変えてみようと、もう一度.htaccessの編集をしようとしたのですが、今度は違う名前のフォルダが作成されません。(FTPソフトで確認)
どなたかご教授お願いします。

K26 10-04-15 (木) 18:13

katsuさん

私も手順通りに実施して、いざアクセスしたら以下のメッセージがでてまいりました。
You don’t have permission to access /sns on this server.
googleで検索しても解決方法はなく、ファイルやディレクトリのアクセス権の問題かとも思われましたがこれも解なし。

1)>今度は違う名前のフォルダが作成されません。
この件は、シンボリックファイルのことであれば.htaccess、ではなく、
%cd ../www
%ln -s ../OpenPNE-3.0.4/web sns
上記操作です。

2)インストール成功⇒3.0.6.1にて
ここの手順の、一番最初のダウンロードファイル、3.0.4を見限り、多少更新されているであろう、3.0.6.1番をダウンロードして、あとはここの手順道理に進めたところ、さくらインターネットでも問題なくインストールが完了しました。

最初の手順を以下とした訳です。
%wget “http://nchc.dl.sourceforge.net/sourceforge/openpne/OpenPNE-3.0.4.zip”

サーバー環境:
さくらスタンダード
MySQL5.1
PHP5.2.12

サーバー内を一旦きれいにしてまっさらから取り組まれてはいかがでしょうか?

K26 10-04-15 (木) 18:15

追記&訂正

誤)%wget “http://nchc.dl.sourceforge.net/sourceforge/openpne/OpenPNE-3.0.4.zip”

正)%wget “http://nchc.dl.sourceforge.net/sourceforge/openpne/OpenPNE-3.0.6.1.zip”

rayway 10-05-31 (月) 3:04

OPENPNEのver.3.0.7がリリースされたので、上記の手順でやってみたのですが、インストール完了してブラウザで確認したら「Forbidden(You don’t have permission to access / on this server.)」と表示されます。
ver.3.0.4と同じ状態のようです。
3.0.7でのインストールは出来ないのでしょうか。

arar 10-07-23 (金) 3:49
コメントフォーム
お名前やメールアドレスを記録しますか?

トラックバック:4

この記事のトラックバックURL
http://www.openpne.jp/archives/1846/trackback/
トラックバック from 杜松の実 09-05-18 (月) 11:28

[OpenSocial] さくらにOpenPNEを入れてみる

http://d.hatena.ne.jp/ponkme/20090515/1242403724 OpenPNEを入れてみる案を試行。 railsplaygroundではメモリ確保できずインストール失敗したので、深追いせずにさくらに入れてみようと思ったら、既ににOp…

ピンバック from 新宿ITベンチャーブログ - OpenPNE3 をさくらのレンタルサーバにインストール 09-05-31 (日) 23:57

[...] http://www.openpne.jp/archives/1846/ [...]

トラックバック from WordPressデザイン工房 10-03-28 (日) 17:27

何故か突然Geeklog

ブログを書く時間は、プライベートな時間ですから、仕事のことはあまり書きたくないのですが、どうも近い将来、SNSと関わり合いになりそうな予感がします。 本来なら、Mixiあたりにア…

ピンバック from OpenPNE | DarkSoulBlog 10-06-11 (金) 22:57

[...] たいなSNSを作るならこれですね。 OpenPNE3はsymfonyが必要です。 OpenPNE3 をさくらのレンタルサーバにインストールしてみましたこの辺を読みながら。 OpenPNE2は入りません。 3は資料が圧倒 [...]

OpenPNE×手嶋屋提供サービスのお知らせ

  • 大規模ホスティング
  • 技術サポート
  • カスタマイズ
  • OpenPNE Manager
  • お客さまサポート

ページの先頭に戻る