CHMOD med PHP
|
Overblik Hvis du host/udbyder bruger et Unix system, vil du få problemer med at læse og ændre filer. Derfor bliver du nødt til at CHMOD filen. AT CHMOD en fil betyder enkelt at ændre rettighederne til filen. Altså hvem der kan skrive i den osv. Dette kan gøres med nogle FTP programmer, men i denne artikel, vil vi mere kigge på, hvordan du gør det ved hjælp af PHP Int modes Ved brug af CHMOD, skal du angive, hvem der skal have rettighederne til filen. Dette angives ved et 4-cifret tal. Måske kender du allerede fra dette som "a", som angiver at filen tilhører alle. Men med funktionen chmod() i PHP, kan du kun bruge et tal. Tallet skal samtidig være 4-ciret, selv om det mest almindelige omkring CHMOD med tal består af 3. Men faktisk er dette 4-cifret tal ens som det 3-cifret. Du skal med PHP blot putte et "0" foran selve modet. Så i stedet for CHMOD 755 bruges CHMOD 0755. Her er tallene til kombination af tilladelser: 0 Ingen rettigheder 1 en, kan kun køre filen 2 en, kan kun læse filen 3 en, kan køre og læse filen 4 en, kan kun læse filen 5 en kan læse og køre filen, men ikke skrive i den 6 en kan skrive og læse den, men ikke køre den 7 alt er tilladt. En kan skrive, læse og køre Du skal bruge et tal ovenfra 3 gange. Først bruges selvfølgelig 0, da vi jo køre med PHP. Læs længer oppe. 1. tal - altid 0 2. tal - (rettighederne for ejeren af filen) 3. tal - (den gruppe filen tilhører, har rettighederne) 4. tal - (alle folk har rettighederne) En CHMOD på 744, vil give ejeren af filen alle rettigheder, mens gruppen filen tilhøre, kan kun læse den og det samme gælder folk generelt). Har du svært ved at sætte disse tal sammen til modes, kan du bruge nogle af følgende: 0400 - Filen er kun læsbar for ejeren 0600 - Ejeren kan skrive og læse, andre har ingen rettigheder 0644 - Ejeren kan kun skrive og læse, mens de andre kun kan læse 0755 - Alle rettigheder til ejeren, mens andre kun kan læse og køre den 0775 - Alle rettigheder til ejeren og filen gruppen tilhører. Andre kan kun læse og køre den 0777 - Alle har rettigheder til at læse filen CHMOD Når, til hvordan vi bruger funktionen. Syntaksen er følgende:
Første parameter i funktionen er selv filnavnet, husk, at dette skal være omgivet af " og ", da det er en string. Dernæst kommer selve int modet, som du læse meget mere om over. Her er det sat til 0777, som giver alle rettigheder til filen. Der kan gå en masse galt, da chmod() funktionen har en masse undtagelser. Derfor kan det være smart, at bruge følgende kode:
Her finder du så ud af om chmod() funktionen returnere true eller false. Et par grunde til, at der kan opstå fejl, kan være: - Du kan ikke CHMOD fremmede filer. Med dette menes, URL"er som http://enside.dk/fil.php. - Det kan afhænge af hvad safe mode er sat til. (ligesom registrer globals osv. i din php.ini fil på serveren). Efter hvad den er sat til, tillader PHP kun at de filer og mapper, som brugeren har lyst til at ændre har samme UID (ejer), som scriptet som skal CHMOD. |
|
Kommentarer
Giv din mening tilkende om denne artikel, eller læs andres.Har du spørgsmål eller brug for hjælp til denne artikel henvises du til forummet.
|
0 Ingen rettigheder 1 en, kan kun køre filen 2 en, kan kun læse filen 3 en, kan køre og læse filen 4 en, kan kun læse filen 5 en kan læse og køre filen, men ikke skrive i den 6 en kan skrive og læse den, men ikke køre den 7 alt er tilladt. En kan skrive, læse og køre ---- Hvorfor er 2"eren og 4"eren den samme ? :S |
Oprettet af:
|
| Fedt nok, har altid undret mig over hvad meningen med det var men nu ved jeg det:) |
Oprettet af:
|
| God artikel :D |
Oprettet af:
|
| God artikel! ;) |
Oprettet af:
|
| okay,. |
Oprettet af:
|
|
Hej jeg ved ikke om det bare er mig jeg kan ikke få den til at virke på surftown. som den er vis på siden her. rene |
Oprettet af:
|
