ブラウザで実行するように設計され、HTTP POST リクエストでデータを処理するサード パーティの Perl スクリプトがあります。
スクリプトはコマンド ラインから実行できますが、その場合、予期された環境で実行されないため、必要なユーザー データにアクセスできません。
スクリプトを非常に頻繁に実行する必要があり、代わりにコマンド ラインで処理できるものを処理するために Apache プロセスを起動するオーバーヘッドを回避したいと考えています。このスクリプトは、Apache 経由よりもはるかに高速にコマンド ラインから実行されます (少なくとも入力データなしで)。
コマンド ライン引数が HTTP POST 要求に存在するかのようにスクリプトに渡されるように、スクリプトをまとめたいと思います。
私は Perl にあまり詳しくないので、私が達成しようとしていることを表すために、PHP で (初歩的な) 例を示したいと思います。
<?php
$_POST['example1'] = $argv[1];
$_POST['example2'] = $argv[2];
include /var/www/thirdPartyScript.php
?>
Perl スクリプトは、次のようにデータにアクセスします。
#!/usr/bin/perl -T
use CGI 3.40 qw(-newstyle_urls -private_tempfiles redirect);
# ...
my $q = CGI->new();
# ...
if ($q->param('example1') {
} else {
}
HTTP POST リクエストでデータが提供されたかのように、サードパーティのスクリプトが関連データにアクセスできるようにするには、ラッパー スクリプトで何を設定する必要がありますか?