gooブログはじめました!

写真付きで日記や趣味を書くならgooブログ

mac lionにquestion2answerをインストール

2011-10-30 15:06:07 | question2answer
question2answerはstack overflowのクローンを簡単に作成できるためのオープンソース。
mac lionとlinuxではapacheの設定ファイルの場所が違ったりするので、以下はmac lionにインストールしたときの
手順。



1.mysql install
http://dev.mysql.com/downloads/
最新版をインストール
以下のファイルをクリックするだけ

mysql-xxxx-osx--x86_64.pkg
MySQLStartItem.pkg
MySQL.prePane


インストール後、macの
[システム環境設定] - [その他] -[mysql]
でmysqlサーバの起動、停止が可能


2.mysql設定変更
rootのパスワード変更

$ /usr/local/mysql/bin/mysql -u root

mysql> SET PASSWORD FOR root@’localhost’ = PASSWORD(‘新ハ?スワート?’);

3.mysql 設定ファイル編集

$ sudo cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf"
?[mysqld]
character-set-server = utf8
skip-character-set-client-handshake
[mysqldump]
character-set-server = utf8
[mysql]
default-character-set = utf8


4.php5の有効か

$ sudo chmod +w /etc/apache2/httpd.conf

httpd.conf の111行目 コメントアウト (#) を外して有効化
#LoadModule php5_module libexec/apache2/libphp5.so


httpd.conf の285行目
(<Directory "/Library/WebServer/Documents"> の内部)
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride AuthConfig FileInfo Limit

/etc/apache2/httpd.conf の469行目 コメントアウト (#) を外して有効化
#AddHandler cgi-script .cgi


/etc/apache2/users/*.conf を編集
Options Indexes MultiViews ExecCGI FollowSymLinks

この時点で、
sudo apache ctrl restart
http://localhost
にアクセスして、「It works!」
がでればapacheの設定はOK



5.phpの設定

$ sudo cp /etc/php.ini.default /etc/php.ini"
$ sudo chmod +w /etc/php.ini

?display_errors = On
post_max_size = 32M
default_charset = "utf-8"
upload_max_filesize = 32M
date.timezone = Asia/Tokyo
pdo_mysql.default_socket= /tmp/mysql.sock
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = pass
mbstring.http_output = pass
mbstring.encoding_translation = Off


6.question2answer
http://www.question2answer.org/install.php

本体とlanguageファイルをダウンロード

本体を解凍して、以下のコピー
/Library/WebServer/Documents/

langua (ja)を以下にコピー
/Library/WebServer/Documents/question2answer/qa-lang


7.question2answer用のデータベース用意

# mysql -u root -p
mysql> CREATE DATABASE q2a DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
mysql> GRANT LOCK TABLES, SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER on q2a.* to q2auser@localhost identified by 'password';
mysql> exit

設定ファイルの変更
#cp qa-config-example.php qa-config.php

define('QA_MYSQL_HOSTNAME', 'localhost'); // try '127.0.0.1' or 'localhost' if MySQL on same server
define('QA_MYSQL_USERNAME', 'q2auser');
define('QA_MYSQL_PASSWORD', 'password');
define('QA_MYSQL_DATABASE', 'q2a');

8.apacheを再起動して
http://localhost/question2answer
にアクセスして、画面指示に従う。
question2answerのrootを設定する。


記事を投稿してエラーがでればmysqlの権限や設定が悪い。