Feb 25, 2007

Mac OS XでSNSを構築しよう-OpenPNE編-

Panther tiger


 「全国の納豆マニアだけが集う会員制のサイトがあったらなぁ。」とか「我が社の社内サークル紹介と報告を社員だけで共有できるサイトがあったらなぁ。」なんて、そんなmixiさんやMyspaceさんのようなSNS環境を自宅や職場のMacに構築したいと思ったりすることもあるわけです。

 人と人、趣味や仕事、興味に関心、いろいろなつながりで成長していく「SNS-ソーシャルネットワーキングサービス-」。手嶋屋さんでオープンソースとして開発、配布されているSNS構築ソフトウェア「OpenPNE(オープンピーネ)」を、Mac OS Xにインストールすれば、高機能なSNSを構築することができます。ここでは、Mac OS X(TigerやPanther)に「OpenPNE」をインストールしSNS環境を構築する方法を考えていきます。


mixiさんやMyspaceさんのような会員制ネットワークの構築ができます。



これ以上ないほど高機能なSNSサイトです。


 OpenPNEは手嶋屋さんによって開発されているオープンソースウェアです。これほど高機能に完成されたソフトウェアを開発、配布されているコミュニティの皆さんには頭がさがります。まさかこんなに簡単にSNS環境を構築できるようとは思いもしませんでした。ありがたいです。


Open PNE : Open PNEの公式ドキュメントサイト
株式会社手嶋屋 : SNSの構築、ASPならOpen PNE本家の手嶋屋に




動作環境

 なお、OpenPNE 2.6.4をインストールするためには、Mac OS Xに次の環境が必要になります。

  • Mac OS X 10.3(Panther)または10.4.x(Tiger)
  • MySQL4.0xまたはMySQL4.1またはMySQL5.0.x
  • PHP4.3xまたは5.x
  • phpMyAdmin
  • postfix(携帯サイトとしても利用する場合)

 MySQLは4.1以上を利用する場合、PHP4.3xとはパスワードの関係でうまくいかないことがあります。phpMyAdminでMySQLにアクセスしようとすると拒否されてしまいます。

"#1251 - Client does not support authentication protocol requested by server;consider upgrading MySQL client" というエラーが発生してしまいます。

 すでにMySQL4.0とPHP4.3の組み合わせで安定動作している環境を利用している人は、無理にバージョンをあげない方がよいと思います。余計な抜け毛が増える可能性が高いですから。

これでは、一歩も前に進めませんのでどっと疲れてしまいます。この問題を解決するには「PHP4.3xとMySQL4.1xのパスワード互換性を解決しよう」を参考にしてください。



事前に済ませておくこと

 といったわけで、この作業では、事前に以下のステップがすんでいることを前提に進めていきます。取りかかる前に、最低限、次のステップをすませておかないといけません。

 3つめからの、MySQL、EntropyPHP、phpMyAdminのインストールは私が作成したへなちょこインストーラーを利用すれば簡単に済ませることができるかもしれません。(DB_SABA_StartPack4 and 5





必要なもの

  • Mac(Mac OS Xを搭載しているもの。ここは10.4.x(Tiger)で進みます)
  • Safari
  • テキストエディット
  • やる気
  • オープンソースコミュニティへの応援
  • セキュリティーとプライバシーへの配慮
  • インターネットを構築してくれた方々への畏敬の念




OpenPNEのダウンロード

 まずOpenPNEのダウンロードから始めます。

  1. まず、OpenPNE公式サイトで配布されている最新のものを利用するか、私が仲間内用に作成した「Mac OS X用OpenPNEインストーラー」と「Mac OS X用OpenPNE設定Automator Actions」を利用するかを決めてください。
    私の作成したなまっちょろいインストーラを利用する場合は、私のページのダウンロードコーナーからダウンロードを実行し、インストールと設定を完了させてください。私の作成したインストーラーを利用すると、運が良ければ、このページで行う設定などを自動化してくれるAppleScriptが動作して、5分ほどでOpenPNEが利用できるような環境を構築できます。

    OpenPNEv264インストーラStartup Set


    OpenPNE公式サイトで配布されているものをダウンロードする場合は、このまま進んでください。


  2. OpenPNE公式サイトへ移動します。

    Open PNE : OpenPNEの公式ドキュメントサイト




  3. ダウンロードをクリックしてダウンロードページへ移動します。





  4. 「最新安定版OpenPNE2.6.x」のところをクリックしてダウンロードを実行します。

    「そのほかのバージョンはこちらから」をクリックすると、sourceforge.orgに移動します。移動先のページから、さらに「Downloads OpenPNE」に進むと、そのほかのバージョンのOpenPNEがダウンロードできるようになっています。基本的には開発版ではなく最新安定版を利用するようにするのがよいと思います。



  5. クリックするとSourceforgeのダウンロード実行ページに移動しますが、少し何もしないで待っていると、自動的にダウンロードが始まります。

    ちょっと待っていると...


    ダウンロードが始まります。


  6. ダウンロードが終わると許可を求められるので「続ける」を押します。デスクトップに、「2.6.1」というフォルダができます。

    続けるを押すと...


    デスクトップに2.6.1というフォルダができます。


  7. 「2.6.1」という名前のままだとこのあと何かと不便なので、名前を「OpenPNE」に変更してしまいます。

    これを...




  8. これでOpenPNEのダウンロード作業は終了です。



OpenPNEの設置

 OpenPNEを適切な場所に設置します。

 Mac OS Xでは、Webページを設置できる場所は二種類あります。具体的なことは、以前のログ、「自分のMacでホームページを公開しよう」を参考にしてください。ここでは、/ライブラリ/WebServer/Documents/に設置していきます。

  1. Macintosh HD(システムがインストールされているドライブ)をダブルクリックして開きます。



  2. つづいて「ライブラリ」フォルダを開きます。



  3. ライブラリフォルダの中はうじゃーっとフォルダがあって、心拍数が上がりますけれど、その中からWebServerというフォルダを探し、開きます。






  4. このなかに「Documents」というフォルダがありますので、この中に、デスクトップにある「Openpne」フォルダを放り込みます。



    どっこいしょっと。


OpenPNEフォルダの設定

次にOpenpneフォルダにアクセス権の設定を行います。

  1. /ライブラリ/WebServer/Documents/に設置した「Openpne」フォルダを開きます。

    ダブルクリックで開く。


    いくつかファイルやフォルダが表示されます。


  2. まず「var」フォルダクリックします。



  3. Finderのメニューから「情報を見る」を実行します。



  4. 情報ウィンドウが開きます。この下のほうにある「所有者とアクセス権」の「詳細な情報」を開きます。



  5. アクセス権が以下のように設定されているので、グループとその他のアクセス権を「読み/書き」に変更してください。

    こうなっているのを変更していきます。



    こんな具合に変更します。


  6. つぎに、「内包している項目に適用する...」を押します。


    内包している項目に適用するを押すと...


    許可を求められますので「OK」を押して先に進みます。



    管理者の認証を求められますので、Macの管理者アカウントとパスワードを入力します。


    認証がうまくいくとアクセス権が設定されます。


  7. 設定が済んだら、もう一度varフォルダの情報ウィンドウにもどり、その他を読み出しのみに戻します。ただし、今度は「内包する~」は押しません。この作業が済んだら、情報ウィンドウは閉じます。

    その他のアクセス権だけを...


    「読み出しのみ」に戻します。ただし「内包して〜」は絶対押さないこと。


  8. 次に、varフォルダを開いて、なかから「img_cache」フォルダを探し、varフォルダと同様にFinderから「情報を見る」を実行します。面倒な人はこの作業はとばしてしまってかまわないと思います。

    この中の


    img_cacheフォルダをクリック。


    Finderから「情報を見る」を実行させて、情報を表示させます。


  9. このフォルダのその他のアクセス権だけを「読み出しのみ」に戻します。ただし「内包して〜」は押さないようにします。

    その他のアクセス権だけを...


    「読み出しのみ」に戻します。ただし「内包して〜」は絶対押さないこと。


  10. 作業が終わったら情報ウィンドウを閉じれば、OpenPNEフォルダの設定作業は終了です。



MySQLにOpenPNE用のユーザーを作る

OpenPNEはデータの管理にMySQLを利用します。OpenPNE用にMySQLユーザーを用意しておきます。すでに、MySQLユーザーがある場合はこのステップはとばします。

  1. SafariからphpMyAdminをひらきます。すでに作ってある場合はこのステップは飛ばします。私のページを元にしてphpMyAdminをインストールした場合は、以下のURLで開けるはずです。

    http://localhost/phpmyadmin/




  2. 特権をクリックします。



  3. 特権を設定するページになります。



  4. "ユーザーの追加する"をクリックします。




  5. "ユーザーの追加する"ページになります。




  6. ユーザー名、ホスト、パスワードを入力します。ここではユーザー名をhogehoge、パスワードをtsukaitaipasswordと入力してあります。自分の好きな名前とパスワードを設定してください。ただし、絶対に忘れないように。パスワード管理の方法はこちらを参考にすると後が楽になります。「キーチェーンでパスワードを管理しよう」


    ホスト名はポップアップから「ローカル」をえらべば自動的に入力されます。


  7. グローバル特権を設定します。SELECT, INSERT, UPDATE, DELETE, FILE, CREAT, ALTER, INDEX, DROP, CREATE TEMPORARY TABLESにチェックをつけておきます。



  8. 実行するを押します。





  9. "ユーザーを追加しました"とでます。これでユーザーの追加作業は終了です。




MySQLにOpenPNE用のデータベースを作る

  1. あらかじめOpenPNEがMySQLにデータを納めるためのデータベースを作成しておきます。SafariからphpMyAdminをひらきます。



  2. メニューから「データベース」をさがして、クリックします。



  3. データベースのページが開きます。このページの一番下にOpenPNEで使用するデータベース名を入力します。ここではopenpneと入力しました。英数字であれば何でもいいと思います。

    一番下をよくみると...


    新規データベースを作成するという項目があるので



    のように入力します。


  4. 入力したら、「作成」ボタンを押します。



  5. 「作成しました」と表示されればばっちりオーケーです。



  6. 続けて、このページの上、メニューから「SQL」をクリックします。



  7. SQL実行ページが表示されます。このウィンドウはこのまま開いたままにして次の作業に進みます。



  8. 「データベース「openpne」で SQL を実行する」の欄にSQLを入力していきます。うわ、難しくなってきたと思うかもしれませんが、入力するSQL文は、OpenPNEフォルダにすでに用意されているので、それをコピーペーストするだけでオッケーです。OpenPNEフォルダのなかにあるsetupフォルダを開きます。



  9. setupフォルダの中には「sql」フォルダがありますので、さらにそれを開きます。



  10. 中にinstallフォルダがありますので、さらにそれを開きます。



  11. SQL文の納められているファイルが4つ表示されます。



  12. このなかのファイルの内、必要なのは一つです。mysqlのバージョンにあわせて選択します。自分の使っているMySQLがMySQL4.0xなら「install-2.6-create_tables-mysql40.sql」を、MySQL4.1xまたはMySQL5.xなら「install-2.6-create_tables-mysql41.sql」を選びます。

    MySQL4.0を使っているならこっち。


    MySQL4.1、MySQL5.xを使っているならこっち。


  13. このファイルをテキストエディットで開きます。





  14. テキストエディットのメニュー「編集」から「すべてを選択」を実行し、さらに「コピー」をします。

    すべてを選択を実行して...


    文章全部が選択されたら...


    コピーを実行...


  15. さきに開いておいたSQL実行ページに戻ります。コピーした文章をペーストをします。

    このページに戻って、



    ここにカーソルをおいて...



    ペーストを実行...。


    SQL文がペーストされます。


  16. ペーストがすんだら、実行を行います。



  17. SQLが正しく実行されると、メッセージと作成されたテーブルが、たくさん表示されます。

    メッセージと...


    たくさんのデータテーブル。


  18. つづいて、「install-2.6-insert_data.sql」についても、同様の操作でSQLを実行しておきます。


    ただし、このファイルはmiでは開かないでください。かならずテキストエディットで開いてください。そうしないと、ファイル内のバックスラッシュがおかしくなってしまい、データベース作成に失敗してしまいます。

  19. これでMySQLへの作業は終了です。Safariは一度閉じてしまってかまいません。



OpenPNEのconfig設定

 OpenPNEが最低限動作するための設定をconfig.phpに作成します。

  1. Openpneフォルダのなかにある「config.php.sample」を複製します。

    これをクリックしたら、



    Finderから複製を実行すると...。



    複製ファイルができる。


  2. 複製されたファイル「config.php.sample」を「config.php」に変更します。

    後ろの部分を消します。


    この名前で確定しようとすると...


    拡張子を追加するかどうかを聞かれますので...


    追加を押します。




  3. このconfig.phpファイルをmiなどのテキストエディタで開きます。





  4. まず、7行目に、OpenPNEを動かすURLを入力します。自分のドメインネームをもっているならそれを、もっていなければ、IPアドレスを入力します。ここでは例として、http://192.168.1.3/openpne/public_html/と入力しました。
    自分のIPアドレスは、アップルメニューからシステム環境設定を開き、「ネットワークパネルのなかから、設定を選び、TCP/IPの項目から確認できます。

    define('OPENPNE_URL', 'http://sns.example.com/');



    ここを...

    define('OPENPNE_URL', 'http://192.168.1.3/openpne/public_html/');




    ドメインネームをまたは固定IPを持っている場合はそれでもかまいません。

    例)ドメインネームを持っている場合
    http://mydomain.ddo.jp/openpne/public_html/

    例)固定IPアドレスを持っている場合(グローバルIPアドレス)
    http://220.220.248.1/openpne/public_html/

    例)固定IPアドレスを持っている場合(ローカルIPアドレス)
    http://192.168.0.2/openpne/public_html/


     OpenPNEを職場や学校、自宅などのLANの中でしか使わないのなら、ローカルのIPアドレスを利用するとよいと思います。(上記のアドレスは例ですので、これを入力するというわけではないのでご注意ください。なにしろ一つめのグローバルIPアドレスはアップルさんのですし)
     自分のIPアドレスは、アップルメニューから「システム環境設定」を開いて、ネットワークパネルを開けば確認することができます。
     OpenPNEをLANの外から(つまりインターネットから)も使うようにしたいのなら、グローバルIPアドレスやドメインネームを利用します。ドメインネームを利用した方が、ユーザーさんも気が楽ですし、携帯サイトとしても利用できます。そもそも、3桁数字の四つの組み合わせをいつも覚えておかないといけないのはつらいでしょうから。ドメインネームは優勝で取得する場合がほとんどですが、ddo.jpなどのフリーのドメインネームサービスを利用する方法もあると思います(ただし個人情報が集まるサイトであることから、その重要を考えますと、フリーのドメインを利用する際は慎重に運営されるべきだと思います)。もし、利用してみたいということであれば、古いログ「Mac OS Xでフリーのドメインネームを利用しよう」を参考にしてください。


    [注意]ドメインネームを利用する場合、BINDの起動ができていないと、セットアップしているMacからドメインネームでの接続できずセットアップに失敗します。



  5. つづいて、MySQLを利用するための設定です。9行目あたりからいきます。username、password、databaseの3つを入力します。上記のステップでphpmyadminを使って設定したものです。ここでは例としてここではユーザー名をhogehoge、パスワードをtsukaitaipassword、データベース名をopenpneと作成したので、その通り入力します。

    前後のちいさな ' を消さないように注意します。


    13行目にユーザー名、14行目にパスワード、16行目にデータベース名です。



  6. 22行目の''で挟まれたところに、データベースを暗号化するためのキーワードを入力します。ここでは例としてsawtoothと入力しました。

    間違えやすいですが、'と'の間に入力します。




  7. 26行目。携帯メール投稿の宛先用アドレスのドメインネームに使われるアドレスです。携帯からOpenPNEを利用しない場合は、設定しなくても大丈夫です。OpenPNEのメール投稿用にドメインや仮想ドメイン、サブドメインなどを持っているなら、入力します。ここでは、例としてsns.mydomain.ddo.jpと入力してあります。






  8. 127行目。SSLの設定です。OpenPNEサイトで、管理者のログインやユーザーのログインの際に、SSLによる暗号化を行うかどうかを設定します。使用する場合はtureにします。

    後ろのfalseのところを...




    いまOpenPNEを構築しているMacがSSLに対応できるように設定されていないと有効にできません。Macのパーソナルウェブ共有をSSLに対応させるには、古いログ「パーソナルWeb共有をhttps接続できるようにしよう」を参考にしてください。


  9. 134行目。SSL用のURLを入力します。SSLを使用しない場合は入力の必要はありません。ここはOpenPNEを利用するURLと同じにしておきます。ここでは、先の設定で、OpenPNEを利用するサイトURLとしてhttp://mydomain.ddo.jp/openpne/public_html/と入力してありますので、同様にします。

    ここを


    こんな具合に...最後の/を忘れないように。


  10. 以上で、config.phpの最低限の編集は終了です。目指す環境によっては、このほかにも設定を行わないといけない部分があると思いますが、とりあえず、動作させるのなら、ここまでの設定で大丈夫だと思います。設定が済んだら忘れずに「保存」して閉じます。





Crontabの設定

OpenPNEは定期的にユーザーに対してメールの送信を行います。この送信スケジュールをCrontabという仕組みを利用して行います。

  1. Finderの「移動」から「フォルダへ移動...」を実行したら、以下の内容を入力して、移動します。

    /etc/






  2. etcフォルダが開きますので、中からcrontabというファイルを探します。




  3. crontabファイルが見つかったら、このファイルをデスクトップにドラッグアンドドロップします。デスクトップにコピーされます。何かあったときのために。もう一つどこか別の場所にも必ずコピーしておいてください。



  4. crontabをmiなどのエディタで開きます。



  5. この文末に以下の内容を追記し、保存します。自分が使用しているPHPの種類に応じてコピーする内容を選んでください。
    #EntropyPHP4.xを利用している場合
    # 6時にメールを送信&20分毎にRSS更新
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_dairy_news.cron /Library/WebServer/Documents/Openpne/bin/ /usr/local/php/bin/php
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_birthday_mail.cron /Library/WebServer/Documents/Openpne/bin/ /usr/local/php/bin/php
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_schedule_mail.cron /Library/WebServer/Documents/Openpne/bin/ /usr/local/php/bin/php
    */20 * * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_rss_cache.cron /Library/WebServer/Documents/Openpne/bin/ /usr/local/php/bin/php


    #EntropyPHP5.xを利用している場合
    # 6時にメールを送信&20分毎にRSS更新
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_dairy_news.cron /Library/WebServer/Documents/Openpne/bin/ /usr/local/php5/bin/php
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_birthday_mail.cron /Library/WebServer/Documents/Openpne/bin/ /usr/local/php5/bin/php
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_schedule_mail.cron /Library/WebServer/Documents/Openpne/bin/ /usr/local/php5/bin/php
    */20 * * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_rss_cache.cron /Library/WebServer/Documents/Openpne/bin/ /usr/local/php5/bin/php


    #Mac OS X純正のPHPを利用している場合
    # 6時にメールを送信&20分毎にRSS更新
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_dairy_news.cron /Library/WebServer/Documents/Openpne/bin/ /usr/bin/php
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_birthday_mail.cron /Library/WebServer/Documents/Openpne/bin/ /usr/bin/php
    00 6 * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_send_schedule_mail.cron /Library/WebServer/Documents/Openpne/bin/ /usr/bin/php
    */20 * * * * root sh /Library/WebServer/Documents/Openpne/bin/tool_rss_cache.cron /Library/WebServer/Documents/Openpne/bin/ /usr/bin/php





  6. 保存し、ウィンドウを閉じたら、デスクトップのファイルを元あった場所のetcフォルダにドラッグアンドドロップで書き戻します。

    どっこいしょ。



    認証を求められるので認証を押します。


    置き換えるか聞かれますので「置き換える」を押します。


    認証を求められるので、対応します。


  7. 書き戻しが済んだら、アクセス権の修正を行います。やり方は上記で書いた方法と同様です。オーナーをシステムに、グループをwheelにします。順番が大切で、まず先にグループから設定しないと、オーナーを変更できませんので注意します。認証を求められたら対応してください。

    これを、右の鍵マークを開けた後


    これに変更します。


  8. 以上でCronの設定は終了です。



OpenPNEのセットアップ

いよいよOpenPNEのセットアップです。やっとこさというところです。Safariから行います。

  1. Safariから次のURLに接続をします。




  2. OpenPNEのセットアップ画面が出ます。感動ひとしおです。おおお。



  3. 項目を埋めていきます。パスワードは半角英数の12文字以内でないとダメです。

    SNSサイト名は、自分がサイト名として使いたい名前を入れます。

    初期ユーザーはSNSサイトに用意される一人目のユーザーのことです。このユーザーアカウントを元にして、友達の招待をしていきます。初期ユーザーで使用したいPCメールアドレスとパスワードを入力していきます。

    管理者アカウントは、SNSサイトを管理する管理者のアカウントです。絶対に忘れないようにします。。パスワード管理の方法はこちらを参考にすると後が楽になります。「キーチェーンでパスワードを管理しよう」


  4. 設定が済んだら、いざセットアップ実行!




  5. セットアップが無事完了すると以下のページに切り替わります。

    ああ、おめでとう自分。まってろよみんな。と、少し燃えさかってみたりする。


  6. ログインページをクリックすると、OpenPNEのトップページが出ます。感動。




管理サイトで詳細設定

セットアップが終了したら、管理サイトに進み、SNSサイトの詳細な設定を行います。

  1. 先のページの「管理ページ」へをクリックして開き、管理ページに進みます。もしページを閉じてしまっていたら、以下のアドレスを入力します。

    http://サイトへのドメインまたはIPアドレス/public_html/?m=admin


    例として以下のようなぐあいです。




  2. 管理画面が開きます。




  3. 管理者名とパスワードを入力して、ログインします。



  4. 管理画面が出ます。ここからさきは実際に運営に必要な設定を考えて、各自で調整をしていくとよいかと思います。基本的にはこのままで大丈夫だと思います。

    とりあえずのぞいてみたいのは「SNS設定」のページ



    あとはメンバー管理ページの「メンバーリスト」。初期ユーザーとして上記で作成したユーザーには「OpenPNE君」という名前になっているので、これを変更しておきたいかなぁと。





動作確認

  1. ログインページが開いたら、初期ユーザーでログインできるか試してみます。上記で設定したとおりに入力をします。




  2. 無事、ログインできれば、ユーザーページが開きます。開いたら、実際に画像のアップロードや張り込み、日記やスケジュールなどが文字化けせずに書き込めるかをテストしてみてください。

    長い道のりだっただけに感激。



うまくいかないとき

セットアップがうまくいかない場合

  1. セットアップページへのURLを入力したのにページが表示されないときや画像が消えていたり、セットアップが先に進めないときなどは、もう一度、config.phpのを確認します。特にWeb上の絶対パスが間違っていないかを確認します。

  2. BINDが起動していないMac上で、このパスをドメインネームで設定してしまうと、正しくアクセスできない場合があります。この場合は、OpenPNEの設定を終了(ここではちょうとCrontabの設定が終わったところ)たところから先の作業は、インターネット越しで別のマシンを使って行うととりあえずはうまくいくはずです。

  3. セットアップに失敗すると、もう一度セットアップ画面にいこうとしても入れないことがあります。このときは、phpmyadminでOpenPNE用のデータベースを開き、「すべてチェック」をつけて、「空にする」を行ってから、もう一度セットアップページを開くと、うまくいきます。







ユーザーページにうまくログインできない場合

  1. ユーザーページにうまくログインできない場合は、Safariの「環境設定」から「セキュリティ」を開き、「Cookieを表示」をクリック。「すべて取り除く」、または自分のドメインやIPアドレスを含んでいるCookieを取り除く操作をするとログインできるようになります。

    環境設定を開いて、



    セキュリティを開き、


    Cookieを表示をクリック



    すべてを取り除く、または、自分のドメインやIPアドレスを含んでいるものだけを取り除きます。



  2. おおよそのインストール作業はこれで終わりです。次はサイトの設定に進んでいきます。



OpenPNEのサイトURL設定をスマートに

上記の設定では、アクセスするURLがちょっと野暮ったいままですので、変更したい場合は、以下の方法が考えられます。これについては機会があればまた別のログとしてまとめたいと思います。

  • Openpneフォルダ名、public_htmlフォルダ名(またはその場所)、config.phpの設定と記述を変更してスマートなURLにする。
  • パーソナルWeb共有(Apache)のhttpd.confファイルにバーチャルドメインの設定をし、config.phpの記述を変更、スマートなURLにする。
  • パーソナルWeb共有(Apache)のhttpd.confファイルに、aliasの設定を行い、スマートなURLにする。



携帯電話対応サイトのための設定

構築したサイトを純正の方法で、携帯電話での投稿に対応させるためには、Postfixの起動とOpenPNEから送信されるメールを正しく扱えるようにPostfixの設定が必要になります。実際に私も試したことがあるわけでもないので確実な内容ではないのですが、想像で、おおよその流れを以下にまとめておきます。ここでは通常のドメインはmydomain.ddo.jpで運営されているものとして進めていきます。
具体的な結果については、機会があればまた別のログとしてまとめたいと思います。

  1. システム環境設定からOpenPNE専用のアカウントを作成する。
    例)snsmailpostman1253

  2. Postfixの起動。これは古いログ「Mac OS Xをメールサーバーにしよう-Postfix編-」を参考に。

  3. /etc/postfix/main.cfに以下の内容を追記

    ##virtual alias SNS##
    virtual_alias_domains = SNS用のドメインネーム
    virtual_alias_maps = hash:/etc/postfix/virtual

    例)
    ##virtual alias SNS##
    virtual_alias_domains = sns.mydomain.ddo.jp
    virtual_alias_maps = hash:/etc/postfix/virtual

  4. /etc/postfix/virtualに以下の内容を追記
    ##virtual alias OpenSNS##
    @SNS用のドメインネーム 先ほど作成したOpenPNE専用アカウント

    例)
    ##virtual alias OpenSNS##
    @sns.mydomain.ddo.jp snsmailpostman1253

  5. ターミナルで以下のコマンドを実行
    sudo postmap /etc/postfix/virtual

  6. ターミナルで以下のコマンドを実行
    sudo postfix reload

  7. OpenPNE専用アカウントのホームフォルダに.forwardファイルを作成し、以下の内容を追記。phpの場所とOpenPNEの場所(大文字小文字)に注意します。
    (これはテキストエディタのmiを使って作成すると楽です。)

    "|/usr/local/php /Library/Webserver/Documents/Openpne/bin/mail.php"

    EntropyPHP5.xを使用している場合は
    "|/usr/local/php5 /Library/Webserver/Documents/Openpne/bin/mail.php"

  8. .forwardファイルのアクセス権を、0644(オーナーが読み書き、グループが読み出しのみ、その他が読み出しのみ)に設定されているか確認し、されていなければ設定します。

  9. 実際に携帯からアクセスして投稿などができるか確認を行います。



みたいな感じでどうでしょう?実はよくわかっていません。





うまく動かないとき

友達を誘う画面で「確認用キーワード」の画像が表示されない

 SNSに友達を誘うための確認用キーワードが画像で表示される機能がありますが、この画像が表示されないことがあります。これは私のサイトの「OpenPNE Setup Pack RC1」を利用したときに起こることを確認しました。(ただし、あなたのサーバーにGDライブラリがインストールされていない、利用できないときも同じ現象が起きます。)




 この原因は、「OpenPNE Setup Pack RC1」で作成されるconfig.phpファイルの一番最後に、どうも不適切な改行のような「なにかよくわからないもの」が残っているからのようです。

 解決するには、OpenPNEフォルダにあるconfig.phpをmiやCotEditorなどのテキストエディタでひらきます。開いた後、一番最後の行まで移動し、?>以下の行を一番下から?>の真後ろまですべて削除してみてください。



こうなっているのを


こんな具合に、後ろに何も残っていないように削除する。


削除した後、ファイルを保存し、もう一度「友達を誘う」を試すと今度はうまく表示されているのではないかと思います


無事解決する。



以上おつかれまさでした。

Trackback

No Trackbacks

Track from Your Website

http://earlybirds.ddo.jp/namahage/inegalog/trackback/tb.php?id=43
(言及リンクのないトラックバックは無視されます)

Comments in Forum

37 Comments