PHP5をMacOS Xで使うまで
PHP5をMacOS Xで使うまで
0.改訂履歴
1.はじめに
このドキュメントでは,MacOS X 10.4.2にて,PHP5を使うまでの手順を説明する. ソースからではなく,パッケージを使ってのインストールすることと,Apacheと連携させるためにLoadmoduleのlibphp5.soの指定方法等の設定についての確認事項を整理する. おまけにMySQLとの接続テストについても記述する.
2.モジュールの入手
- PHP5は以下のURLから入手できる.
- このサイトにおいてあるのは最新版であるが,コンパイルが必要だったりするので,Xcodeの導入など前提条件が必要となる.
- 最新版ではない可能性があるが,以下のサイトでインストールイメージが配布されている.
- Marc Liyanage - Software - Mac OS X Packages - PHP
3.モジュールのインストールの実行
- ダウンロードしたイメージをマウントする.
- 中身を見ると次のようなパッケージになっている.
- あとは,パッケージを実行して,いつも通りのインストールを行う.
4,PHPの環境について確認する
ivory:~ shinnai$ php -v
PHP 4.3.11 (cli) (built: May 31 2005 23:41:02)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
ivory:~ shinnai$
|
- これは古いバージョン.
- パスが聞いているか確認する.
ivory:~ shinnai$ which php
/usr/bin/php
ivory:~ shinnai$
|
- PHP5がインストールされているディレクトリが検索パスに設定されていない.
- ディレクトリに移動し,絶対パスでバージョンを確認してみる.
ivory:~ shinnai$ /usr/local/php5/
bin include lib man
etc info libphp5.so share
ivory:~ shinnai$ /usr/local/php5/bin/php -v
PHP 5.0.4 (cli) (built: Apr 4 2005 17:32:28)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.4-dev, Copyright (c) 1998-2004 Zend Technologies
ivory:~ shinnai$
|
ivory:~ shinnai$ ls -la /usr/local/php5/lib/php.ini
-rw-r--r-- 1 root staff 45062 Oct 2 17:21 /usr/local/php5/lib/php.ini
ivory:~ shinnai$
|
5.ApacheでPHP5を使う設定にする
- PHP5をApacheで利用できるようにするには,ライブラリのロードと,拡張しの登録を設定する必要がある.
- PHP5用ライブラリである,libphp5.soが保存されている場所を確認する.
ivory:~ root# ls -la /usr/local/php5/libphp5.so
-rwxr-xr-x 1 root staff 10682896 Apr 5 00:33 /usr/local/php5/libphp5.so
ivory:~ root#
|
ivory:~ shinnai$ ls -la /etc/httpd/httpd.conf
-rw-r--r-- 1 root wheel 38701 Oct 2 17:21 /etc/httpd/httpd.conf
ivory:~ shinnai$
|
ivory:~ root# tail -n 20 /etc/httpd/httpd.conf
# default home pages will be advertised on Bonjour.
RegisterUserSite customized-users
#RegisterUserSite all-users
# Bonjour advertising for the primary site is off by default.
#RegisterDefaultSite
</IfModule>
Include /private/etc/httpd/users/*.conf
# begin entropy.ch PHP module activation
Include /usr/local/php5/httpd.conf.php
# end entropy.ch PHP module activation
# begin entropy.ch PHP module activation
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
DirectoryIndex index.html index.php
# end entropy.ch PHP module activation
ivory:~ root#
|
- インストーラによって,追加されていることが確認できた.
- インクルードされているファイルの中身を確認する.
ivory:~ root# cat /usr/local/php5/httpd.conf.php
#
# Additional PHP Apache directives,
# part of the entropy.ch PHP package for Mac OS X
#
# For more information, go to http://www.entropy.ch/software/macosx/php/
#
LoadModule php5_module /usr/local/php5/libphp5.so
<IfDefine !APACHE2>
AddModule mod_php5.c
</IfDefine>
ivory:~ root#
|
ivory:~ root# locate apachectl
/Library/Documentation/Services/apache/programs/apachectl.html.en
/Library/Documentation/Services/apache/programs/apachectl.html.html
/Library/Documentation/Services/apache/programs/apachectl.html.ja.jis
/usr/sbin/apachectl
/usr/share/man/man8/apachectl.8
/usr/share/zsh/4.2.3/functions/_apachectl
ivory:~ root# /usr/sbin/apachectl status
Status doesn't work without lynx, try fullstatus
ivory:~ root# /usr/sbin/apachectl start
/usr/sbin/apachectl start: httpd (pid 703) already running
ivory:~ root#
|
PHPのサンプルプログラム
<html>
<head>
<title>PHPのテスト</title>
</head>
<body>
<?php
print "Hello world!"."\n";
$a = 1 + 2;
print "1+2=".$a."¥n";
phpinfo();
?>
<br>
PHPは終了
</html>
|
- これを,現在インストールしているユーザのSitesフォルダ以下にindex.php等として保存する.
- ブラウザで,以下のようなアドレスにアクセスする.
- http://127.0.0.1/~ユーザ名/index.php
- 成功すると,次のような画面が表示される.
6.MySQLと接続テストをしてみる
- PHP5とMySQLを接続するテストを行う.
- 次のようなPHPファイルを作成して,保存する.
- たとえばファイル名はdbcon.php等.
- また,接続のユーザおよびパスワードは自分の環境に合わせて設定する.
PHPのサンプルプログラム(MySQLとの接続)
<?php
$link = mysql_connect("localhost", "root", "mypassword")
or die("Could not connect");
print ("Connected successfully");
mysql_close($link);
?>
|
- 正しく接続できたら,Connected successfullyとブラウザに表示される.