差分
このページの2つのバージョン間の差分を表示します。
次のリビジョン | 前のリビジョン | ||
westhost:nucleus [2005/11/22 20:58] – 作成 osamu | westhost:nucleus [2008/03/07 16:45] (現在) – osamu | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ===== WestHostでNucleusを使う ===== | ||
+ | ==== PHPとMySQLのインストール ==== | ||
+ | 管理画面でPHP 4.x、MySQL 4.1、phpMyAdmin、eAcceleratorをインストールしておく。 | ||
+ | eAcceleratorはPHPのプログラムをキャッシュするアクセラレータ。サイトがぐっと速くなる。 | ||
+ | |||
+ | ==== MySQLの設定 ==== | ||
+ | |||
/etc/my.cnf | /etc/my.cnf | ||
- | '' | + | |
- | default-character-set = utf8 | + | default-character-set = utf8 |
- | character-set-server = utf8 | + | character-set-server = utf8 |
- | collation-server = utf8_general_ci | + | collation-server = utf8_general_ci |
- | init-connect=SET NAMES utf8 | + | init-connect=SET NAMES utf8 |
+ | |||
+ | [mysqldump] | ||
+ | default-character-set = utf8 | ||
+ | [mysql] | ||
+ | default-character-set = utf8 | ||
- | [mysqldump] | ||
- | default-character-set = utf8 | ||
- | [mysql] | ||
- | default-character-set = utf8'' | ||
+ | ==== PHP の設定 ==== | ||
/ | / | ||
- | '' | + | |
- | [mbstring] | + | [mbstring] |
- | mbstring.language = Japanese | + | mbstring.language = Japanese |
- | mbstring.internal_encoding = UTF-8 | + | mbstring.internal_encoding = UTF-8 |
- | mbstring.encoding_translation = Off'' | + | mbstring.encoding_translation = Off |
- | / | + | ==== TIMEZONE ==== |
- | '' | + | / |
+ | # | ||
+ | | ||
+ | |||
+ | / | ||
+ | TZ=" | ||
+ | export TZ | ||
+ | |||
+ | それから、/ | ||
+ | !#/bin/sh | ||
+ | export TZ=" | ||
+ | chmod 755 / | ||
上記を設定して、restart。 | 上記を設定して、restart。 | ||
+ | ==== Nucleusからの接続文字コードをUTF-8に ==== | ||
+ | MySQL 4.1から内部で使う文字コードが自由に選べるようになった。このため、接続するクライアント側の文字コードとデータベース側の文字コードが違っている場合にはデータベース側で文字コード変換をしてくれる。デフォルトのクライアント側の文字コードがISO-8859-1になっている場合、PHPからMySQLにアクセスするとき、接続する文字コードを指定しないとMySQLが内部のUTF-8のコードを無理やりISO-8859-1に変換して送り出してしまう(逆に、書き込むときはUTF-8の文字列をISO-8859-1だと思って逆変換してしまう)。これを避けるするために、念のためにNucleusのコアにちょっと手を入れる。 | ||
+ | nucleus/ | ||
+ | < | ||
+ | * Connects to mysql server | ||
+ | */ | ||
+ | function sql_connect() { | ||
+ | global $MYSQL_HOST, | ||
+ | |||
+ | $connection = @mysql_connect($MYSQL_HOST, | ||
+ | mysql_select_db($MYSQL_DATABASE) or startUpError('< | ||
+ | mysql_query(' | ||
+ | return $connection; | ||
+ | }</ |