open_basedir bana dosyayı yazmaya izin vermez, ancak dizinin doğru görünüyor?

0 Cevap php

Kısa hikaye:

Benim php komut bir open_basedir kısıtlama alıyorum - komut basit bir "disk için yeni bir dosya yazma testi". Ben open_basedir ayarlarının doğru var gibi geliyor bana ve dosya doğru yerde - ama hayır şans, sadece aynı hata her zaman. Ben bu sitede benzer open_basedir sorunları için aradım, ama bu sorun ile herhangi görmedim - dizin doğru görünüyor ama hala hataları atar.

My guesses as to what the problem is:
1) open_basedir doesn't work the way I think it does
2) My settings are wrong and I'm just not seeing it
3) It's actually something else, like IIS read/write permissions, etc
4) ???

Uzun hikaye:

PHP ile bir IIS sunucu üzerinde çalışıyorum ve ben çalışmak için aşağıdaki kod parçacığını (basit dosya yazma testi) almaya çalışıyorum:

date_default_timezone_set('America/Chicago');
$myFile = 'testfile.txt';
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = "Some Text\n";
fwrite($fh, $stringData);
$stringData = "Some More Text\n";
fwrite($fh, $stringData);
fclose($fh);

Bu php script C bulunur: \ inetpub \ wwwroot \ webdirectory \ test_write.php benim sunucuda

Here is my php.ini setting for open_basedir:
open_basedir = c:\inetpub\wwwroot;c:\inetpub\wwwroot\WEBDIRECTORY

Ben komut dosyasının sayfasını açtığınızda, hiçbir çıkış görmeyi bekliyorum, ve ben tekrar kontrol o zaman sunucu üzerinde yazılı yeni bir dosya olmalıdır. Bu yerine ne olsun:

Warning: fopen(): open_basedir restriction in effect. File(testfile.txt) is not within the allowed path(s): (c:\inetpub\wwwroot) in C:\inetpub\wwwroot\WEBDIRECTORY\test_write.php on line 5 Warning: fopen(testfile.txt): failed to open stream: Operation not permitted in C:\inetpub\wwwroot\WEBDIRECTORY\test_write.php on line 5 can't open file

I've tried a lot of permutations: originally the open_basedir line was just
open_basedir = c:\inetpub\wwwroot

... Ama bu da işe yaramadı.

Yerine dosyasının kendisini sadece adı: (vb, \ inetpub \ wwwroot \ webdirectory \ testfile.txt c), ve ben aynı hata mesajı alıyorum ben de testfile.txt için mutlak bir yolunu girerek denedim.

Herhangi bir fikir? Yardımlarınız için çok teşekkürler.

0 Cevap