WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:PHPとCGI

0:[投稿] リブ [2004/02/05 23:37 ][環境:わからない Apache]

PHPを実行するサーバがapacheなので

<?php
virtual('test.cgi');
...
?>

としてみたのですが、

Fatal error: Call to undefined function virtual()...

となってしまいました。
virtual()自体使ったことがなかったのでvirtual()の
書式に関してもこれでいいのか分かりせんが、とにかく失敗でした。

virtual()にこだわりませんが、HTMLのアンカーから*.phpに
飛ばせて、*.php内のソース内でCGIを実行する方法を教えてください。
*.cgiへ飛ばすのでありません。ロケーションは*.htmlから
飛んだ先の*.phpのままをキープさせます。


1:[回答] AC [2004/02/06 23:00 ]

Fatal error: Call to undefined function virtual()...
というエラーが発生する場合、まずモジュールが有効になっていないことを疑うのですが、
http://www.php.net/manual/ja/ref.apache.php によると、
>このモジュールの関数は、Apache 1.x モジュールとしてPHPを実行している場合のみ有効です。
と書いてあります。特に何もオプションを指定しなくても、virtual()は使えそうに思います。
あるいは、Apache 2.x を使っているとか?
phpinfo()を見ると、何か分かるかもしれません。

この場合、virtual()で行うのが最もよいと思いますが、これ以外の
方法を取るとすれば、fopen('http://example.com/', 'r')とでもするのが
思い付きます。


2:[質問] リブ [2004/02/09 23:14 ]

Apache 2.0でした。それだとvirtual()が使えないというのは
知りませんでした。

fopen('http://example.com/', 'r')
ではなくて、'test.cgi'を実行させる方法を調べています。


3:[回答] AC [2004/02/11 11:53 ]

popenを使って、HTTPヘッダの部分だけ取り除いて出力する方法もあります。
http://www.php.net/manual/ja/function.popen.php

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World