SNS構築(OpenPNE)

最終更新日: 2017.11.25

■概要

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

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


■MySQL設定

OpenPNEでは、各種データをMySQLデータベース上で管理するため、OpenPNE用のデータベースと、当該データベースへのアクセス用ユーザーをMySQLに登録する必要がある。
ここでは、データベース名をopenpne、データベースアクセス用ユーザー名をopenpneとしてMySQLに登録する。
[root@centos ~]# 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@centos ~]# yum -y install php-mysql ← php-mysqlインストール

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

[root@centos ~]# wget "https://codeload.github.com/openpne/OpenPNE3/legacy.zip/OpenPNE-3.8.20" -O OpenPNE.zip ← OpenPNEダウンロード

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

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

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

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

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

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

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

[root@centos config]# vi OpenPNE.yml ← OpenPNE.yml編集
base_url: "http://centossrv.jp/openpne/" ← base_url変更

mail_domain: "centossrv.jp" ← mail_domain変更

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

[root@centos ~]# /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@centos ~]# /var/www/OpenPNE/symfony project:clear-controllers ← 開発環境用ファイルを削除

■Apache設定

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

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

[root@centos ~]# systemctl reload httpd ← Apache設定反映※CentOS7の場合
[root@centos ~]# /etc/rc.d/init.d/httpd reload ← Apache設定反映※CentOS6の場合

以下はバーチャルホストでSSL=httpsでアクセスできるようにする場合のみ
[root@centos ~]# 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} !centossrv.jp$
      RewriteCond %{REQUEST_URI} !^/openpne/ ← 追加
      RewriteRule ^/(.*)?$ http://%{HTTP_HOST}/$1 [L,R]
    </IfModule>
</VirtualHost>

[root@centos ~]# systemctl reload httpd ← Apache設定反映※CentOS7の場合
[root@centos ~]# /etc/rc.d/init.d/httpd reload ← Apache設定反映※CentOS6の場合

■OpenPNE確認

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

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



■関連コンテンツ




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

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