|
注目!
テレビや雑誌でも紹介されているペン型ICレコーダー |
WindowsでPHPを使おうと思うのだが、この時期、「5.2」と「5.3」のどちらを使うべきか、迷っている。
「5.2」の方は大分枯れてきていて安定してるが、「5.3」の方はつい先日5/4に「5.3.2」にバージョンアップしたばかり。 とはいえ「5.3」の新機能も魅力的だし、今後の事を考えると、やはり「5.3」にするべきだろうか。 Apache + PHP5.3(Thread Safe) ちょっと考えてしまっている。
| ネット関連::PHP | 09:41 AM | comments (x) | trackback (x) |
|
RedHat Enterprise Linux 5.2 で動かしている Oracle11gデータベースに対し、
PHPからOCI8でアクセスしたい。 ●オラクルのバージョンは 11.1.0.6.0 ●PHPのバージョンは 5.1.6-20 以前に作業した RHEL5 + Oracle10gR2 環境で PHPを使えるようにする作業に習って作業したのだが、うまく行かなかった。 ※【RHEL5】PHP から Oracle DB にアクセスする そのため peclを使う方法で作業する事にした。 この場合、既にPHPがセットアップされていないといけない。 従ってディストリビューションに含まれるPHPをセットアップしておく。 以下、rootにて。 以上でPHPをセットアップ。# cd /media/.. # DVDドライブに移動 以下、OCI8をセットアップする。 ソースコードからコンパイルする手順に比べると、はるかに簡単です。 OCI8のセットアップでは、Instant Clientを使う方法もあるが、 このサーバーには既に Oracle11g (11.1.0.6.0)がセットアップされているので、これを使いたい。 そのため、以下のように作業する。 以上にて oci8.so が正常にセットアップされました。# pecl install oci8 引き続き PHPにoci8の設定を加え、apacheを再起動します。 これで phpinfo ()を呼び出して「oci8」がロードされているかどうか確認します。# echo "extension=oci8.so" > /etc/php.d/oci8.ini また apache の実行ユーザーの環境変数に ORACLE_HOME が設定する必要があるので、以下の設定を登録しておく。 #vi /etc/syscofig/httpd 参考) ・【PHP】Instant Client+peclでoci8(oracle)関数を使えるようにする
| ネット関連::PHP | 05:45 PM | comments (x) | trackback (x) |
|
RedHat Enterprise Linux 5.0 で Oracle 10gR2 を運用している。
このサーバーのOracle DB に WEB 経由でアクセスできるようにするため、 Apache と PHP をセットアップする。 セットアップするパッケージとそのバージョンは以下の通り。 ●Apacheは、RPMパッケージ 2.2.3-6 ●PHPは、ソースコードから 5.2.5 (RHEL5で配布しているRPMパッケージでは5.1.6) ●Oracleは、10gR2(10.2.0.1.0) for Linux 32bit ●Apache は RHEL のディストリビューションに含まれる rpm を使う サーバーにRedHat Enterprise Linux 5をインストールする際に 、同時にApache をインストールしているが、apxs をインストールしていない。 ●PHP はソースコードからコンパイルするが、Oracle Instant Client は使わない ※既にインストール済みのOracle 10gを使う Apacheと同様、RHELインストール時にPHPもインストールしているものの、これをアンインストールし、ソースからコンパイルしてインストールする。rootユーザーにて ・RHEL をインストールする際に、httpd サービスをインストールしていない場合 以下のパッケージを追加する。httpdサービスをインストールしている場合でも その他にhttpd-devel が必要となるので、追加でインストールする。 ・DVD ドライブに RedHat Enterprise Linux 5.0 のセットアップDVDを挿入し、 「/media/RHEL_5 i386 DVD」にマウントされているとする。 rootユーザーにて以下を実行する。 2008.04.16時点でのPHPの最新バージョンは「5.2.5」 ●PHPソース・アーカイブのダウンロード rootユーザーにて、 ●Configuration と Make # cd php-5.2.5 rootユーザーにて rootユーザーにて rootユーザーにて ユーザ権限の問題で、エラーが発生する場合がある。 <?phpのようにしてORACLEにアクセスしようとした時に、 Warning: ocilogon() [function.ocilogon]: OCIEnvNlsCreate() failed. There is something wrong with your system - please check that ORACLE_HOME is set and points to the right directory in /var/www/html/include.phl on line 18のようなエラーメッセージが発生する場合、apache ユーザーをoinstallグループに加える。 rootユーザーにて、/etc/group を編集し、oinstallグループの後尾にapacheユーザーを追加する。 rootユーザーにて 確認用スクリプトを作成する。 <?php ブラウザでアクセスし、PHPのOCIが下図のように設定されていればOK。
| ネット関連::PHP | 02:06 PM | comments (x) | trackback (x) |
|
ローカルWindows端末でPHPを開発するための環境として、
「Win32 + Apache + PHP」 を使っています。 ここで、最近PEARを使おうと思い(PHPと共に既にセットアップされている) c:\php5\pear.bat を実行すると、 「OCI.dllが見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールし直すとこの問題は解決される場合があります。」 というエラーメッセージが表示される事に 気がつきました。 要するに「Oracle」をインストールしていないので、 OCI.dllがローカル環境に存在しないのですが、 それにも関わらず OCI.dllを呼び出す2つのDLL php_oci8.dll、php_pdo_oci8.dll を使う設定になっていたためでした。 これまで、このdllを使わなかったので気がつかなかっただけです。 当面Oracleを使う事は無いので、「php.ini」ファイルのモジュール拡張定義を修正 extension=php_oci8.dll の2行を以下のようにコメントアウト、 ;extension=php_oci8.dll これでpear.batを実行してもエラーメッセージが表示されなくなりました。 ちなみにpear.batを正常に動作させるためには、 環境変数PATHにc:\php5\ext(phpの拡張モジュールのディレクトリ)を記述する必要があります。 一時的に実行するだけなら、環境変数に追加。 set PATH=%PATH%;c:\php5\ext 恒常的に設定するなら、 ■「マイコンピュータ」(右クリック)→「プロパティ」 |
|
| |
|
|
|