SNS構築(OpenPNE)

最終更新日: 2012.06.22

<<トップページ <<新着情報 <<リンク集 <<サイト内検索 <<CentOSで自宅サーバー構築 <<Fedoraで自宅サーバー構築

■概要

OpenPNEmixi(ミクシィ)のようなSNS(ソーシャルネットワーキングサイト)を構築する。

Webサーバー+PHPWebサーバー間通信内容暗号化MySQLデータベースが構築済であること


■MySQL設定

OpenPNEでは、各種データをMySQLデータベース上で管理するため、OpenPNE用のデータベースと、当該データベースへのアクセス用ユーザをMySQLに登録する必要がある。
ここでは、データベース名をopenpne、データベースアクセス用ユーザ名をopenpneとしてMySQLに登録する。
[root@scientific ~]# mysql -u root -p ← MySQLへrootでログイン
Enter password:  ← MySQLのrootパスワード応答
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 78 to server version: 5.0.22

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> grant all privileges on openpne.* to openpne@localhost identified by 'パスワード'; ← openpneユーザ作成
Query OK, 0 rows affected (0.52 sec)

mysql> create database openpne; ← openpneデータベース作成
Query OK, 1 row affected (0.08 sec)

mysql> exit ← ログアウト
Bye

■OpenPNEインストール

(1)php-mysqlインストール
OpenPNEはPHPで動作するため、PHPからMySQLデータベースへアクセスするためのパッケージであるphp-mysqlをインストールする
[root@scientific ~]# yum -y install php-mysql ← php-mysqlインストール

(2)OpenPNEインストール
[root@scientific ~]# yum -y install php-gd php-xml ← OpenPNEに必要なPHPパッケージインストール

[root@scientific ~]# wget "http://github.com/openpne/OpenPNE3/zipball/OpenPNE-3.4.14.1" -O OpenPNE.zip ← OpenPNEダウンロード

※最新版のURLはダウンロードページで確認すること

[root@scientific ~]# unzip OpenPNE.zip ← OpenPNE展開

[root@scientific ~]# mv openpne-OpenPNE3-262459f/ /var/www/OpenPNE ← OpenPNE展開先ディレクトリを所定の場所へリネーム移動

[root@scientific ~]# rm -f OpenPNE.zip ← ダウンロードしたファイルを削除

[root@scientific ~]# cd /var/www/OpenPNE/config/ ← ディレクトリ移動

[root@scientific config]# cp ProjectConfiguration.class.php.sample ProjectConfiguration.class.php
 ← ProjectConfiguration.class.phpをサンプルよりコピー

[root@scientific config]# cp OpenPNE.yml.sample OpenPNE.yml ← OpenPNE.ymlをサンプルよりコピー

[root@scientific config]# vi OpenPNE.yml ← OpenPNE.yml編集
base_url: "http://scientificsrv.com/openpne/" ← base_url変更

mail_domain: "scientificsrv.com" ← mail_domain変更

[root@scientific config]# cd ← ホームディレクトリへ戻る

[root@scientific ~]# /var/www/OpenPNE/symfony openpne:install ← OpenPNEインストール

  Choose DBMS:
  - mysql
  - pgsql (unsupported)
  - sqlite (unsupported)

mysql ← mysql応答

  Type database username

openpne ← データベースユーザ名応答

  Type database password (optional)

******** ← データベースユーザパスワード応答

  Type database hostname

localhost ← localhost応答

  Type database port number (optional)

 ← 空ENTER

  Type database name

openpne ← データベース名応答

  Type database socket path (optional)

/var/lib/mysql/mysql.sock ← MySQLソケット名応答

  The DBMS                 : mysql
  The Database Username    : openpne
  The Database Password    : ******
  The Database Hostname    : localhost
  The Database Port Number :
  The Database Name        : openpne
  The Database Socket      : /var/lib/mysql/mysql.sock

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

y ← y応答
・
・
・
>> installer installation is completed! ← インストール成功

[root@scientific ~]# /var/www/OpenPNE/symfony project:clear-controllers ← 開発環境用ファイルを削除

■Apache設定

[root@scientific ~]# vi /etc/httpd/conf.d/openpne.conf ← OpenPNE用Aapche設定ファイル作成
Alias /openpne /var/www/OpenPNE/web
<Directory "/var/www/OpenPNE/web">
    AllowOverride All
</Directory>

[root@scientific ~]# vi /var/www/OpenPNE/web/.htaccess ← .htaccess編集
  RewriteBase /openpne ← 変更

[root@scientific ~]# /etc/rc.d/init.d/httpd reload ← Apache設定反映
httpd を再読み込み中:                                      [  OK  ]

以下はバーチャルホストでSSL=httpsでアクセスできるようにする場合のみ
[root@scientific ~]# vi /etc/httpd/conf.d/ssl.conf ← WebサーバーSSL設定ファイル編集
#   Per-Server Logging:
#   The home of a custom SSL log file. Use this when you want a
#   compact non-error SSL logfile on a virtual host basis.
CustomLog logs/ssl_request_log \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

    <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteLog "logs/rewrite_log"
      RewriteLogLevel 0
      RewriteCond %{HTTP_HOST} !scientificsrv.com$
      RewriteCond %{REQUEST_URI} !^/openpne/ ← 追加
      RewriteRule ^/(.*)?$ http://%{HTTP_HOST}/$1 [L,R]
    </IfModule>
</VirtualHost>

[root@scientific ~]# /etc/rc.d/init.d/httpd reload ← Apache設定反映
httpd を再読み込み中:                                      [  OK  ]

■OpenPNE確認

https://サーバー名/openpne/でトップページへアクセス
メールアドレス・・・sns@example.com
パスワード・・・password
「ログイン」ボタン押下
ログインできることを確認
「設定変更」⇒「PCメールアドレス設定」でメールアドレスを変更すること
「設定変更」⇒「パスワード設定」でパスワードを変更すること

https://サーバー名/openpne/pc_backend.phpで管理ページへアクセス
アカウント名・・・admin
パスワード・・・password
「ログイン」ボタン押下
ログインできることを確認
「SNS設定」で管理者メールアドレスを変更すること
「管理画面設定」⇒「Change Password」でパスワードを変更すること





▲このページのトップへ戻る

LPIロゴ Copyright© 2012 fallenangels, All rights reserved.
ご自由にリンクしてください(連絡は不要です)
本ページへのご意見・ご要望、誤字・脱字・リンク切れ等のご連絡はこちらからお願いします