Pröva följande funktion.
<?
function mkdirs($mode, $dir)
{
exec("mkdir $dir");
exec("chmod $mode $dir -R");
}
?>
11 svar · 407 visningar · startad av raki
Mappar som jag skapar med mkdir(); kan jag inte läsa ifrån.
Jag får detta felmeddelandet:
Warning: SAFE MODE Restriction in effect. The script whose uid is
342 is not allowed to access /home/sites/site37/web/kunder/
owned by uid 15 in /home/sites/site37/web/index.php on line 343
Men mappar som jag gör "manuellt" i ftp´n kan jag läsa ifrån.
Pröva följande funktion.
<?
function mkdirs($mode, $dir)
{
exec("mkdir $dir");
exec("chmod $mode $dir -R");
}
?>
den vill inte skapa några mappar när jag använder koden
Anropade du den såhär?
mkdirs("/path/",777);
Om inte, försök med det.
Japp eller såhär:
$anvnamn hämtar jag från ett formulär.
(glömde "/" på slutet)
mkdirs("/home/sites/site37/web/kunder/".$anvnamn."/",777);
Men det hjälpte inte, får fortfarande samma felmeddelande
"I have noticed that on some servers with apache and php with safe mode enabled, you are able to create dir but not move a file or create a file in it.
When the dir is created it is created with UID Apache and script UID can not write to dir under safe mode"
Ändra UID på script till samma som på katalog kanske? :)
japp, hittar ingen information om hur man gör det :(
Drar upp en urgammal tråd av den anledningen att jag stött på samma problem och vill ha HJÄLP...
Ändra UID på script till samma som på katalog kanske?
Är det någon här som har koll på hur man löser det?
Andra förslag mottages naturligtvis också tacksamt.
Under safe_mode går det att lösa via FTP att skapa en katalog med skrivrättigheter.
Ta en titt här: http://www.phpportalen.net/viewtopic.php?p=204968#204968
Först skapar du katalogen via mkdir - sedan ändrar du rättigheterna på den. Php kan bara skapa kataloger med max 755-rättigheter, är den väl skapad av/via php kan du dock ändra rättigheterna i efterhand:
<?php
mkdir ("katalogen", '0755');
chmod ("katalogen", '0777');
?>
Tar lite bakgrund...
Jag har laddat ned ett administrations-script från en svensk php-kodare (vill inte namnge personen utan hans godkännande).
Efter lite mailkorr med honom har vi ännu inte lyckats lösa mitt dilemma, som är:
Problem när jag försöker tillverka en ny sida (allting ska göras via admin-scriptet):
1. Jag kopierar en existerande sida
2. Skapar en ny sida med ett nytt filnamn
3. Klistrar in koden för att sedan redigera den
Så kunde man ju tro att det skulle fungera, men jag får en massa Warnings.
Warning: main(): SAFE MODE Restriction in effect. The script whose uid is 65534 is not allowed to access ./header.inc owned by uid 1137 in /home/domain/www/test.php on line 2
Warning: main(header.inc): failed to open stream: Success in /home/domain/www/test.php on line 2
Warning: main(): Failed opening 'header.inc' for inclusion (include_path='.:/usr/local/lib/php') in /home/domain/www/test.php on line 2
Warning: main(): SAFE MODE Restriction in effect. The script whose uid is 65534 is not allowed to access ./function_test.php owned by uid 1137 in /home/domain/www/test.php on line 3
Warning: main(function_test.php): failed to open stream: Success in /home/domain/www/test.php on line 3
Fatal error: main(): Failed opening required 'function_test.php' (include_path='.:/usr/local/lib/php') in /home/domain/www/test.php on line 3
Jag kan tillverka enkla html-sidor och även enkla php-sidor, men så fort det kommer till lite headers o footers knasar det.
Webbhotellet: LINUX, Apache, SAFE MODE on (har varit i kontakt med dem och de ändrar inte).
Malte m fl gurus: Några idéer? Hur lösa detta?
Tack på förhand
PS PM:a mig vid ev kik i scriptet DS