Archive for the ‘PHP’ Category.

忙しい人のためのPHPデバッグ環境構築

忙しいのにPHPデバッグ環境構築したい場合はそうないかと思いますが、
現在、どこかのサーバーで動作しているPHPモジュール群をローカルで動作させたい場合の手順をメモします。

念のため、検証した環境は
・Windows Vista SP2
・Eclipse Platform 3.5.1.R35x_v20090910-9gEeG1_FthkNDSP2odXdThaOu9GFDPn83DGB7

です。
PDTと、XAMPPは既にインストールされている事が前提ですので、入っていない場合は以下記事から入れてやってください。
Installation of PDT on Eclipse3.5
Zend Debuggerインストール(xampp編)
記事の投稿日よりバージョンが上がっていたら、最新のバージョンをお勧めします。

既存のPHPモジュールをEclipseにインポート

現在動作しているPHPモジュールを、FTPやSubversionでもなんでも良いので、まずはローカルPCにコピーします。
今回は、svnからチェックアウトしましたので、subversiveが入っている前提ですが、FTPで持ってきた場合は、
PHPエクスプローラー右クリック→インポート→一般→ファイルシステムでまずはEclipseのプロジェクトと認識させます。

PHPプロジェクトへ変換

インポートしただけでは、単なるファイルセットなので、これらをPHPのプロジェクトに変換します。
プロジェクトを右クリックして、構成→Add PHP SupportでOKです。

デバッグサーバーの設定

サーバーにはXamppのApacheを使用します。ここのAliasに先ほどインポートしたプロジェクトのルートを記載します。
具体的には、(Xamppインストールディレクトリ)\apache\conf\httpd.confに以下を追加します。

Alias /testPHP "D:\Workspace\test\testPHP"
<Directory "D:\Workspace\test\testPHP">
Order allow,deny
Allow from all
</Direcotry>

とか。

デバッグサーバーの構成

プロジェクト右クリック→デバッグ→デバッグサーバーの構成で、新しくデバッグサーバーの構成を作成します。
上記では、
http://localhost/testPHP/
というURLになるので、それを踏まえて以下のようにして構成します。

ファイル:/testPHP/index.php
URL:自動生成(デフォルト)

これでXamppのコントロールパネルからApacheを起動しておいて、Eclipse環境から先ほど作成したデバッグ構成で起動してみます。
とりあえず動かすだけならこれでOKなはずです。
細かいことは置いといて、ZendDebuggerの設定だとステップ実行出来ないので、単純にXDebugで動かしてもいいかもしれません。
(これ昔からそうだったなぁ。)


XAMPPでXoops cube legecy2.1.8を動かす場合

XAMPPと言って、ApacheやphpやMySQL等をセットにしてインストール出来る便利なパッケージがあるのですが、
現在の最新(1.7.3)は、以下のようなラインナップとなっています。

Apache 2.2.14 (IPv6 enabled) + OpenSSL 0.9.8l
MySQL 5.1.41 + PBXT engine
PHP 5.3.1
phpMyAdmin 3.2.4
Perl 5.10.1
FileZilla FTP Server 0.9.33
Mercury Mail Transport System 4.72

ただし、少なくともXoops Cube Legacy2.1.8は、PHP5.2.xじゃないとうまいこと動かない。
Xoops Users Group Japan – 大量の警告(?)文の解決策について

なので、XAMPPもPHP5.2系の奴を選べばよいが、XAMPPのページを見ても過去バージョンのPHPのバージョンがよく分からないのでメモ。

XAMPP1.7.1にPHP5.2.9が入っており、これが5.2系最終らしいです。


Installation of Module on Xoops

Xoopsを導入したはいいが、そのままではうまいこと活用できないので、
「モジュール」を導入する必要がある。

どのような事がやりたいのか、内容を大体決めておいて、それが可能なモジュールを設置して動作させる。Xoopsはいわばこの「モジュール」が動作するプラットフォームなのである。

モジュールのインストールは、今のところ以下のように行える。
(「D3」というモジュールシステムの方法が今後強化されていくようだが、今回はこれを使用します。

環境は、
Xoops Cube Legacy 2.1.8
です。
Xoopsのインストールディレクトリは、/var/www/xoopsとします。

まずはD3の設定。
D3モジュールについてはhttp://xoops.kudok.com/d3.htmを参考にさせていただきました。

まずは、xoops_trus_path用のフォルダを作成し、所有者変更と、.htaccessの作成をします。

# cd /var/www/xoops
# mkdir xoops_trust_path
# cd xoops_trust_path
# echo -e order deny, allow \\ndeny from all &gt; .htaccess
# chown -R apache.apache .

そして、上記で設定したxoops_trust_pathを、Xoopsの定義として設定します。
設定は、xoops/html/mainfile.phpに記載します。

 
    // XOOPS Trusted Path
    // This is option. If you need this path, input value. The trusted path
    // should be a safety directory which web browsers can't access directly.
    define('XOOPS_TRUST_PATH', '/var/www/xoops/xoops_trust_path');

これで、設定は出来ましたので、参考サイトでもお勧めしている「altsys」というモジュールを入れつつモジュール設置を試したいと思います。

モジュールの設置は

・モジュールをダウンロードする。
・モジュールをアクティブにする。

が基本だと思いますのでそのように。

モジュールダウンロード
作業フォルダを作成し、そこでモジュールをダウンロードして展開します。

# mkdir /var/www/xoops/work
# cd /var/www/xoops/work
# wget 'http://xoops.peak.ne.jp/md/mydownloads/visit.php?cid=1&amp;lid=76&amp;extension=zip'
# unzip altsys-0.7.zip
# chown -R apache.apache html/
# chown -R apache.apache xoops_trust_path/
# ls -l
合計 236
-rw-r--r-- 1 apache apache 214729  23  2009 altsys-0.7.zip
drwxr-xr-x 4 apache apache   4096  23  2009 html
drwxr-xr-x 3 apache apache   4096  418 16:03 xoops_trust_path

上記で出来た「html」を、/var/www/xoops/htmlに、
「xoops_trust_path」/var/www/xoops/xoops_trust_pathにコピーします。

# cp -rp html/* /var/www/xoops/html/
# cp -rp xoops_trust_path/* /var/www/xoops/xoops_trust_path/

ここまで出来たら、xoops画面から、モジュールを選択して「インストール」を押下します。
xoops-altsys

下記画面のように完了画面が出ればOKです。
xoops-altsys-installed

画面リロードすると、「ALTSYS」とメニューが出てきます。
xoops-altsys-menu

その他、こんなのをとりあえず入れてみました。
d3blog・・・ブログ
MCLLIBS・・・Inquiry, message等に必要なライブラリ
Inquiry・・・お問い合わせモジュール
message・・・メッセージ

モジュールの詳細についてはまた調べるとします。