&tag(MacPorts/php5);
*目次 [#l3dd79e7]
#contents
*参考情報 [#p2c3da62]
-[[MacPortsでApache2+PHP5: JavaFlavor Weblog:http://javaflavor.cocolog-nifty.com/blog/2007/07/macportsapache2_43a4.html]]
-[[Install Apache 2 and PHP 5 with MacPorts | 2 tablespoons:http://2tbsp.com/content/install_apache_2_and_php_5_macports]]
-[[Snow LeopardなMacBookにMacPortsで開発環境入れ直し(Apache2/PHP5/MySQL5/PostgreSQL8.3) [C!]:http://creazy.net/2010/01/install_macports_snow_leopard.html]]
*インストール [#qd207bcc]

-MacPortsのapache2用のインストール
 $ sudo port install php5 +apache2 +pear
-ついでにマルチバイト関連もインストール
 $ sudo port install php5-mbstring
-インストールが終わったらapache2のモジュールとして組み込む
#pre{{
 $ cd  /opt/local/apache2/modules
 $ sudo /opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so
}}
-httpd.confの編集
--httpd.confを開く
#pre{{
 $ cd /opt/local/apache2/conf
 $ vi httpd.conf
}}
--dir_moduleの変更
#pre{{
<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>
}}
--mime_moduleの最後に追加
#pre{{
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
}}
-php.iniの作成
--php.iniを作成して開く
 $ cd /opt/local/etc/php5
 $ sudo cp php.ini-development php.ini
 $ sudo vi php.ini
--文字コードをUTF-8で統一する([[MacOSXにPHP5,MySQL5をインストール:http://fujisan.sunnyday.jp/mac/macosx-php5.html]])
#pre{{
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
mbstring.func_overload = 1
}}
-再起動
 $ sudo /opt/local/apache2/bin/apachectrl restart

*再インストール [#d9aeb3cb]
-別のオプションをつけてインストールし直したい場合cleanしてからinstallする
#pre{{
$ sudo port clean php5
$ sudo port install php5 +apache2 +pear
}}
*動作確認 [#g9161404]
-DocumentRootにinfo.phpを作成
#pre{{
cd /opt/local/apache2/htdocs/
vi info.php
}}
-phpの情報を表示する。
#pre{{
<?php
phpinfo();
?>
}}
-http://localhost/info.phpにアクセス。


*Tips [#mb712daf]
**MySQLと接続する [#h27a0f21]
-php5-mysqlをインストール
  sudo port install php5-mysql
-/opt/local/etc/php5/php.iniを編集。mysql.default_socket、mysqli.default_socket and、pdo_mysql.default_socketに次の値を設定。
 /opt/local/var/run/mysql5/mysqld.sock
*トラブルシューティング [#x1f03a9c]
**文字化けする [#meae9d26]
ブラウザのデフォルトエンコーディングとあってない場合UTF-8でそのまま出力すると文字化けするかも。ブラウザによってはでるかもしれないけど、基本的にはcharsetを指定しないとだめ。
#pre{{
<?php header("Content-Type: text/html; charset=UTF-8"); ?>

}}

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS