, 09 2006 . 21:18
+
- - PHP , - , .
: Windows 2003 Server + Internet Information Server 6.0 + PHP 5.0
: ( . hard link - ) , "Inetpub" .
? -, , , , . , , ( UNIX- inode). , , , , , ID, , ID . , .
hardlink? Windows 2003 Server . .
, -, , , , .
// 32 , $letters
$letters = 'abcdef0123456789';
srand((double) microtime() * 1000000);
$string = '';
for ($i = 1; $i <= rand(32,32); $i++) {
$q = rand(1,12);
$string = $string . $letters[$q];
}
// ,
$file = "F:\\archive\\somefile.mpeg";
// ,
$hlink = "F:\\tmpfiles\\$string\\somefile.mpeg";
// $string
if(!exec("mkdir \"F:\\tmpfiles\\$string\"",$status_dir,$error_dir)){
echo " \"F:\\tmpfiles\\$string\"
";
}else{
echo " \"F:\\tmpfiles\\$string\" !
";
}
if($error_dir) print_r($status_dir);
//
if(!exec("fsutil hardlink create $hlink $file",$status,$error)){
echo " !
";
}else{
echo " !
";
}
if($error) print_r($status);
, :
"F:\tmpfiles\fae72cba8a3bacb8a3b892"
Array ( )
!
Array ( )
.
Windows XP Professional Corporate Edition with Service Pack 2 + Denwer 2.0 . Windows 2003 Server with Service Pack 3 - . , Windows (mkdir "F:\tmpfiles\fae72cba8a3bacb8a3b892\", fsutil hardlink create "F:\tmpfiles\fae72cba8a3bacb8a3b892\somefile.mpeg" "F:\archive\somefile.mpeg"), "Hardlink created for D:\temp\link.to.file.avi <<===>> D:\files\file.avi".
? , PHP , . exec(), system(), passthru() :
Warning: SAFE MODE Restriction in effect...
%windir%\php.ini, safe_mode = On, Off. web-. , !
, exec() system(), start (start mkdir...), . , .
Else - . ? IUSR'y archive tmpfiles? fsutil? . . . !
IUSR (Internet Guest Account) %windir%/system32/cmd.exe!
, , :
Array ( [0] => The FSUTIL utility requires that you have administrative privileges. )
, IUSR .
, :
http://www.sysinternals.com/Utilities/Junction.html