PHP (または、もっと正確に言えば、PHP 経由の Python) に重要なネットワーク ロケーションを認識させるのに苦労しています。私は、ユーザーが Python スクリプトを簡単に実行できるシンプルな Web サイトを作成しようとしています。そのスクリプトのほとんどは、このネットワーク ロケーションを使用します。PHP は Python スクリプトを実行し、Python スクリプトによって印刷されたものを表示します。テスト用に、非常にシンプルな Python スクリプトを作成しました。まず、次のコマンドを使用して、そのロケーションへのアクセスを許可します。
NET USE \\servername\directory password /USER:username
次に、ディレクトリを検索します。見つかった場合は が出力されFound
、見つからない場合は が出力されますNot Found
。(注: コマンドラインから Python を実行すると が出力されますFound
。)
ただし、PHP がコマンド ラインを開いて Python スクリプトを実行すると、 が出力されますNot Found
。上記のコマンドを使用してその場所の使用を許可しようとしましたが、 を使用して PHP を実行しているユーザーを変更しようとしましたがputenv
、何も機能しません。PHP から呼び出されたときに Python がこの場所を見つけられないのはなぜですか?
サイトは Windows Server 2012 を実行しているコンピューターでホストされており、リモートの場所では Windows Server 2008 が実行されており、PHP は v5.4、IIS は IIS 8.5 です。