1

Windows サーバーで PHP 5.3.1 を実行しているため、ネットワーク共有上の XML ファイルにアクセスするには、PHP スクリプトを変更する必要があります。さまざまな理由により、ファイルを PHP サーバーに配置することはできません。また、PHP サーバーにマップされたドライブを作成することも許可されていないため、PHP.ini の open_basedir パラメータを変更して、共有への UNC パスを含める必要があります。次に例を示します。

open_basedir = "E:\inetpub\;E:\DB_HubDataFiles\;\\stdmfps01\inter-departements$\CVSC-CDT-Estimation-Cedule\"

ただし、共有上のファイルにアクセスしようとすると、「open_basedir の制限が有効です」というエラーが表示されます。次のようにファイルにアクセスしようとしています。

$jobfilename = "//stdmfps01/inter-departements$/CVSC-CDT-Estimation-Cedule/" .$job . ".xml";
if (file_exists($jobfilename)) {
    $jobxml = simplexml_load_file($jobfilename);
    etc...

これは権利の問題ではないことを確認しましたが、エラーは open_basedir に問題があることを示しています。だから私の質問は:

  1. open_basedir は Windows で UNC パスを処理しますか?
  2. もしそうなら、私の構文に問題がありますか?
  3. open_basedir 以外のオプションはありますか?

ありがとう。

4

2 に答える 2

1

これは私にとってはうまくいきました:バックスラッシュをスラッシュに置き換えます

open_basedir = "E:\inetpub\;E:\DB_HubDataFiles\;//stdmfps01/inter-departements$/CVSC-CDT-Estimation-Cedule/"
于 2016-02-25T09:44:13.957 に答える