Apache と php は、解凍版、インストール版、またはパッケージ版で使用できます。
以下では、解凍されたバージョンを例に挙げます:
1. 解凍されたバージョンはインストールする必要はなく、解凍して任意のディレクトリに配置するだけです。
2. Apache の php サポートを設定します。設定プロセスについてはインターネットを参照してください。
3. デモ テストで使用されるソフトウェア バージョンは、apache2.2.6、php5.3.5、javabridge5.4.4 です。ソフトウェア バージョンは自分で選択できますが、互換性があり、サポートされている必要があります。
1. php と apache の環境が設定されていることを確認した後、php が Java 呼び出しをサポートするように javabridge を設定します。
JavaBridge jar パッケージと対応する Java ディレクトリを任意のディレクトリに配置します。
2. Java ディレクトリ内の Java.inc (Java.inc と JavaProxy.php を含む) を次のように php プロジェクトに導入します: require_once ("../java/Java.inc");
導入されたパスの問題、つまり ../java/Java.inc 部分については、デモの secUtil.php ページの導入方法を参照してください。
3. C:Javajdk1.6.0_20jrelibext などの、php によって呼び出される jar パッケージを、システムが使用する jre の lib 配下に置きます
4. JavaBridge を起動します。
Javabridge を起動するには 3 つの方法があります:
(1) jar パッケージを直接ダブルクリックして起動します。
(2)、cmd コマンド start java -jar JavaBridge.jar SERVLET_LOCAL:8080 (ext ディレクトリ内) を実行できます。
(3)、バッチ プロセスを実行する 2 番目の方法を使用できます (バッチ プロセスはjar パッケージと同じディレクトリにあります)
1. test.php
require_once("java/Java.inc");
header("content-type:text/html; charset=utf-8");
// PHP で Java クラス java.lang.System のインスタンスを取得
$system = new Java('java.lang.System' );
$s = new Java("java.lang.String", "php-java-bridge config...
//プロパティへのアクセスをデモンストレーションします
print 'Java version='.$system->getProperty('java.version').'
print 'Java ベンダー=' .$system->getProperty('java .vendor').'
print 'OS='.$system->getProperty('os.name').' '.
$system->getProperty('os.version ').' 上の '.
$system->getProperty('os.arch').';
// java .util.Date の例
$formatter = new Java('java .text.SimpleDateFormat',
"EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz");
print $formatter-> ;format(new Java('java.util.Date')) ;
?>
注: 内部のインポート パスの変更に注意してください。
2. javabridge が有効になっている場合は、Apache と javabridge を起動し、phpDemo のindex.php にアクセスします。
注:
1. エラー レポート NOTICE にアクセスする場合は、php.ini 設定ファイルを変更します。error_reporting = E_ALL & ~E_NOTICE
2. JavaBridge と Java.inc のバージョンを一致させてください。
3. Java の呼び出しプロセスにエラーがある場合、たとえば、呼び出されたメソッド名が存在しないなどのエラーが Javabridge ウィンドウとページに表示されます。
2. Linux のインストールと設定プロセス
2.1.1. インストールのバージョン
tar?zxvf d - 2.2.29.tar.gz
make
make install
2.1.3. Apache の起動
インストールが成功したら Apache を起動します: /usr/local/apache2/bin/apachectl start
起動が成功したかどうかを確認します: ps -ef | grep httpd 実行後、以下が表示されれば起動成功です。
2.1.4. Apache FAQ
注:
configure: error: in `/usr /local /tongSoftware/httpd-2.2.29/srclib/apr':
configure: error: $PATH に受け入れ可能な C コンパイラが見つかりません 詳細については `config.log' を参照してください srclib/apr の設定に失敗しました
つまり、システムは、gcc コンパイラーがインストールされていないことを示すプロンプトを表示し、コンパイラーをインストールします: yum -y install gcc。
2. Make と make install は、次のメッセージが表示されるまで正常にインストールされます:
....
mkdir /usr/local/apache2/man
mkdir /usr/local/apache2/man/ man1
mkdir /usr/local/apache2/man/man8
mkdir /usr/local/apache2/manual
make[1]: ディレクトリ `/root/aphp/httpd-2.2.29' を終了します
[root@device httpd-2.2.29]#
インストールパスを選択し、Apacheを起動するだけです。
3. Apache の上位バージョンまたは httpd-2.4.12.tar.gz などの他のバージョンをインストールすると、コンパイル中に次のエラー メッセージが表示されます:
....
checking for APR... no
configure: error: APR not found. 編集環境を確認するときに表示されます:
APR... no
configure: error: APR not found. を読んでください。
./configure ?help | grep apr を使用してヘルプを表示できます。
--with-built-apr APR/APR-Util のバンドルされたコピーを使用します
--with-apr=PATH インストールされた APR のプレフィックス、または apr-config へのフルパス
--with-apr-util=PATHインストールされている APU のプレフィックス、またはフルパス
APR (Apache Portable Runtime) をインストールする
[root@localhost ~]# cd /tmp/52lamp/ //ソースコードの保存場所
[root@localhost 52lamp]# tar - zxvf apr-1.4.2.tar.gz //unzip -o apr-1.4.2.zip
[root@localhost 52lamp]# cd apr-1.4.2
[root@localhost apr-1.4.2]# . /configure
[root@localhost apr-1.4.2]# make
[root@localhost apr-1.4.2]# make install
コンパイル環境を再度確認すると、次のように表示されます
APR を確認していますutil... no
configure: エラー: APR-util が見つかりません。ドキュメントを読んでください。インストールされている APU の -util=PATH プレフィックス、または
[root@localhost 52lamp]# tar -zxvf apr -util-1.3.9.tar.gz
[root@localhost 52lamp]# cd apr-util-1.3.9[root@localhost apr-util-1.3.9]# ./configure --prefix=/ usr/local/apr-util --with-apr=/usr/local/apr
[root@localhost apr-util-1.3.9]# make
[root@localhost apr-util-1.3.9]# make install
./configure を実行しても、APR-util が見つからないというプロンプトが表示されます。追加 --with- apr=/usr/local/apr --with-apr-util=/usr/local/apr-util が
の後に表示されます構成: エラー: libpcre の pcre-config が見つかりません。PCRE は必要であり、http:// pcre.org/ から入手できます
[root@localhost httpd-2.2.16]# ./configure ?help |
--with-pcre=PATH 外部 PCRE ライブラリを使用します
[root@localhost 52lamp] # unzip -o pcre-8.10.zip
[root@localhost 52lamp]# cd pcre-8.10
[root@localhost cd pcre-8.10]# ./configure --prefix=/usr/local/pcre
[root@localhost cd pcre-8.10]# make
[root@localhost cd pcre-8.10]# make install
Apache/httpd のインストールを続行し、 ./configure local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre のときにパラメーター --with-apr=/usr/ を追加します。 =/usr/local/pcre、この問題は解決されました。
注: httpd-2.4.12.tar.gz のインストールプロセスは個人的にテストされていません。
2.2. PHP をインストールします
2.2.1. インストール バージョンPhp-5.4.40.tar.gz
./configure --prefix=/usr/local/php/ --with-apxs2=/usr/local/apache2/bin/apxs (ここでコンパイルするときは、必ず Apache モジュールをコンパイルし、 --with-apxs2 をコンパイルしてください。 =/usr/local/apache2/bin/apxs)
make
make install
2.2.3. Php FAQ
注:
1. libxml2-python と libxml2 がインストールされていない場合は、-develパッケージをインストールすると、コンパイル中に次のエラーが表示されます:
1.Perl がインストールされていません
2. apxs が見つかりませんでした。 --with-apxs2=/path/to/apxs を使用してパスを渡してみてください
3. Apache が --enable-so を使用して構築されていませんでした (apxs の使用法ページが表示されます)。 /usr/local/apache/bin/apxs の出力は次のとおりです:./configure: line 6669: /usr/local/apache/bin/apxs: Permission Deny解決策: 1. 最初に Perl パッケージをインストールします。権限の問題、つまり、実行可能権限の追加
2.2.4. php を設定する
指定された設定ファイル ディレクトリに設定ファイルを作成する
2.2.5. PHP の Apache サポートを追加
[root@localhost php-5.4.40]# vi /usr/local/php/lib/php .ini
AddType application/x-httpd-php .php .php3
Apache を再起動します。
index.php ファイルを作成して、サポートが正常かどうかをテストします。
<?phpphpinfo();
> php フォルダー (/usr/local/php/etc など)2. この javabridge.jar に一致する Java フォルダーをファイル内の任意の場所に配置します。通常は、/usr/local/php/etc などの php フォルダーに配置されます。次に、参照パスの問題に注意してください。
例: require_once ("/usr/local/php/etc/java/Java.inc");
3. 必要な jar パッケージを jre の下に配置します (ie/usr/java/jdk1.6.0_20/jre / lib/ext)、プロジェクトは
//linux
java_require('/usr/java/jdk1.6.0_20/jre/lib/ext/SVSClient.jar');
4. javabridge を起動します
java -jar JavaBridge.jar SERVLET_LOCAL:8080 このコマンドはウィンドウを閉じることができないため、バックグラウンドで実行されません。
java -jar JavaBridge.jar SERVLET_LOCAL:8080 & このコマンドはウィンドウを閉じてバックグラウンドで実行できます (ウィンドウを閉じる前に ctrl+c で中断する必要がある場合があります)
5. 起動が成功したかどうかを確認します。 ps -ef | grep 8080, start 成功は次の図のようになります。
6. Javabridge が正常かどうかを確認するには、次のような Java API を呼び出してテストします。
require_once("java/Java.inc" );
header("content-type:text/html; charset=utf-8");
// Java クラスのインスタンスを取得PHP の java.lang.System
$system = new Java('java.lang.System');
$s = new Java("java.lang.String", "php-java-bridge config...
");
echo $s;
// プロパティへのアクセスをデモンストレーションします
print 'Java version='.$system->getProperty('java.version').' < br>';
print 'Java ベンダー=' .$system-> getProperty('java.vendor').'
';
print 'OS='.$system->getProperty(' os.name').' '.
$system->getProperty('os.arch').' の';
// java.util.Date example
$formatter = new Java('java.text.SimpleDateFormat',
"EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz");
print $formatter->format(new Java('java.util. Date'));
?>
注: 内部のインポート パスの変更に注意してください。