Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

PHP Mkdir Povolenie nefunguje

PHP ponúka funkciu nazvanú " mkdir " , ktorý vám umožní vytvoriť nový adresár . Voliteľný argument určuje číselnú hodnotu oprávnenia , ktoré majú byť pridelené do nového adresára . Napríklad , oprávnenia pre " 0777 " poskytuje čítať , písať a spúšťať oprávnenia pre " vlastníka " , " skupina " a " ostatné " . Existuje niekoľko prípadov , v ktorých priradenie oprávnení s " funkciou mkdir " objaví sa , ako by to nefunguje , pretože nový adresár nemá rovnaké oprávnenia , odovzdanej funkciu . Nemožno použiť Windows

zoznam oprávnení, ktoré dodávajú na " mkdir " funkcií sú platné iba na linuxových súborových systémov . To znamená , že nemôžete priradiť oprávnenia s adresári , môžete vytvoriť pod Windows . Ak odovzdáte oprávnenia s funkciou " mkdir " pod Windows , PHP jednoducho ignoruje .
Default User Account

Pamätajte si , že skript beží na webovom serveri od prehliadač beží pod užívateľským účtom východzí na serveri ako " www - data " , nie v rámci svojho užívateľského účtu . Ak oprávnenia adresára nefunguje , môže to byť preto , že ste sa testovanie skript v rámci vášho účtu namiesto používateľského konta predvolené . Môžete vyskúšať skript ako predvolený užívateľ zadaním " su www - data " a skúmanie oprávnenia adresáre , ktoré boli na užívateľovi .
Directory maska ​​

Ak je výsledné oprávnenia z nového adresára sa líši od toho , čo ste prešiel, môže to byť preto , masky adresára aplikovanej na oprávnenie . Maska je udržiavaná na webový server , nie PHP . Ak chcete obísť masku , pomocou " umask " funkciu nastaviť masku na nulu , vytvoriť adresár pomocou " mkdir " a zmeniť oprávnenia adresára pomocou funkcie " chmod "

Napríklad : . < ? br >



Rekurzívny Priradenie

funkcie " mkdir " má druhý voliteľný argument , ktorý vytvára vnorené adresáre rekurzívne . Keď priradíte oprávnenia adresára rekurzívne , povolenia nesmú byť vykonaná v správnom poradí a môžete získať rôzne výsledky , z toho , čo ste očakávali . Ak chcete zabezpečiť správne poradie , použite funkciu " chmod " priradiť oprávnenia adresára do nového adresára , potom, čo ho vytvoríte pomocou " mkdir " funkcia

Napríklad : .

< ? phpif ( mkdir ( $ newdir , 0755 , true ) ) chmod ( $ newdir , 0755 ) ; ? >

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené