0

PHP を使用してユーザーのcgi-binパスを動的に検索し、それにファイルを書き込む方法はありますか?

たとえば、追加機能のために Perl スクリプトも使用する PHP アプリケーションを作成したい (それがなくても壊れません)。最初の実行時にcgi-bin、ユーザーのディレクトリのパスまたは名前を取得し、スクリプトを作成します。ユーザーが最小限のインストールを必要とする (つまり、アプリケーションをディレクトリにアップロードしてから実行するindex.php) だけで、アプリケーションから呼び出すことができるようにディレクトリに入れます。

これは可能ですか?それとも、実際にできることをはるかに超えた夢を見ているのでしょうか?

これに対する最も簡単な解決策は、正規表現を使用して、ユーザーのルート ディレクトリから始まる名前のディレクトリを確認すること/cgi/ですが、これは完全に信頼できる方法とは思えません。

4

2 に答える 2

1

__FILE__Perl と PHP の両方で、現在実行中のファイルの名前が表示されます。

于 2013-07-14T16:41:23.193 に答える
0

正気の方法はありません。

サーバーは、CGI プログラムをゼロ、1 つ、または多数の異なる場所で実行するように構成できます。名前に「cgi」を含める必要はありません。

サーバー構成を解析して、そのように設定されている場所 (存在する場合) を特定することもできますが、サーバーごとに個別のパーサーを作成する必要があり、それぞれが非常に複雑になります。Apache に限定したとしても<file>、仮想ホスト、、、、、、など<directory>に基づいてフィルタリングを行う必要があります。<location>ScriptAlias.htaccess

于 2013-07-14T14:30:48.580 に答える