PHP chmod() Dosya İzinleri

PHP'deki chmod() fonksiyonu, belirtilen bir dosyanın modunu kullanıcı tarafından verilen belirli bir moda değiştirmek için kullanılan dahili bir fonksiyondur.

Chmod() fonksiyonu belirtilen dosyanın izinlerini değiştirir ve başarılı olduğunda true, başarısız durumunda false döndürür.

Sözdizimi:

chmod(file, mode)

File: Gereklidir. Dosyanın yolunu belirtir.

Mode: Gereklidir. Yeni izinleri belirtir.

mode değiştirgesi üç adet sekizlik değerden oluşur. Sırayla sahip, grup ve diğerlerinin izinlerini düzenlerler. Her bileşen kullanıcıya verilen izinlerin toplamından oluşur. Çalıştırma hakkı için 1, yazma hakkı için 2 ve okuma hakkı için 4 değeri toplama dahil edilir. Unix sistemlerindeki mode hakkında daha ayrıntılı bilgiyi 'man 1 chmod' ve 'man 2 chmod' kılavuz sayfalarında bulabilirsiniz.

mode ile belirtilen değerin özdevinimli olarak sekizlik bir değer olduğu varsayılmamaktadır, bu bakımdan değerin önüne 0 getirmeniz gerekir. Ayrıca, ("g+w" gibi) dizgesel kip belirtimleri çalışmayacaktır.

ÖRNEK:


<?php

chmod("/test/deneme", 755);   // onluk tabanda; doğru sonuç vermeyebilir

chmod("/test/deneme", "u+rwx,go+rx"); // dizge; doğru sonuç vermeyebilir

chmod("/test/deneme", 0755);  // sekizlik; doğru kip değeri.

?>	

Mode parametresi dört rakamdan oluşur:

Olası değerler (birden çok izin ayarlamak için aşağıdaki sayıları toplayın):

ÖRNEK:


<?php

// Sahip için okuma ve yazma,
chmod("test.txt",0600);

// Sahip için okuma ve yazma, diğer herkes için okuma
chmod("test.txt",0644);

// Sahip için okuma,yazma, çalıştır. Herkes için okuma ve çalıştırma
chmod("test.txt",0755);

// Sahip için okuma,yazma, çalıştır. Sahip grubu için okuyun
chmod("test.txt",0740);

?>

Dosya İzinlerini Anlama


Bildiğiniz gibi PHP dili en iyi linux server'de çalışır. Bu makalede linux dosya izinlerinden bahsedeceğim.

Linux'ta dosya sahipliği ve izinlerin temelleri. Bir dosyanın veya dizinin sahiplerinin kim olduğunu, dosya izinlerinin nasıl çalıştığını ve bunları nasıl görüntüleyebileceğinizi anlayın ve temel dosya izinlerini kendiniz nasıl ayarlayacağınızı öğrenin.

İzinler ve Mülkiyet Nedir?


Kendi Linux sisteminizdeki bazı dosyalara erişemiyorsanız, bunun nedeni genellikle yanlış yapılandırılmış dosya erişim izinleridir. Linux kutunuzdaki tek kullanıcı sizseniz, kendi penguen işletim sisteminize erişiminizi kısıtlayan tüm bu izinlere (veya bunların eksikliğine) sahip olmanın ne anlama geldiğini merak ediyor olabilirsiniz. Ancak, saçlarınızı çekmeden önce, Linux'un çok kullanıcılı bir ortam olarak tasarlandığını unutmayın. Birden fazla kullanıcının bulunduğu bir ortamda, hangi dosyaların size ait olduğuna ve bunlarla kimin ilgilenebileceğine karar vermek için güvenli bir sisteme sahip olunması çok önemlidir.

İzin Grupları


Tabloda izin grupları ve kapsamları açıklanmaktadır:

İzin Açıklama
Sahip Dosyanın veya dizinin atanmış sahibi tarafından kullanılan izinler.
Grup Dosya veya dizinin sahibi olan grubun üyeleri tarafından kullanılan izinler.
Diğer Dosya sahibi ve dosya veya dizinin sahibi olan grubun üyeleri dışındaki tüm kullanıcılar tarafından kullanılan izinler.

Dosya sahipliğini anlama


Linux sisteminizdeki, dizinler de dahil olmak üzere her dosya belirli bir kullanıcıya ve gruba aittir. Bu nedenle, dosya izinleri sahip, gruplar ve diğerleri için ayrı ayrı tanımlanmıştır.

Sahip: Dosyaya sahip olan kişinin kullanıcı adı. Varsayılan olarak, dosyayı oluşturan kullanıcı sahibi olur.

Grup: Dosyaya sahip olan kullanıcı grubu. Dosyaya sahip olan gruba ait olan tüm kullanıcılar, dosyaya aynı erişim izinlerine sahip olacaktır. Bu, örneğin, belirli dosyalara erişebilmeleri için bir kaç farklı kullanıcı gerektiren bir projeniz varsa, diğerleri ise kullanılamaz. Bu durumda, tüm kullanıcıları aynı gruba ekler, gerekli dosyaların bu gruba ait olduğundan emin olur ve dosyanın grup izinlerini buna göre ayarlarsınız.

Diğer: Dosyanın sahibi olmayan ve dosyaya sahip olan gruba ait olmayan bir kullanıcı.

Dosya izinlerini anlama


Linux'ta üç tür erişim izni vardır: okuma, yazma ve çalıştırma. Bu izinler, dosya sahibi, grubu ve diğer tüm kullanıcılar için ayrı ayrı tanımlanır.

Kullanılan İzin Türleri:

Okuma izni: Normal bir dosyada, okuma izni, dosyanın açılıp okunabileceği anlamına gelir. Bir dizinde, okuma izni dizinin içeriğini listeleyebileceğiniz anlamına gelir.

Yazma İzni: Düzenli bir dosyada bu, dosyayı değiştirebileceğiniz, yani dosyaya yeni veriler yazabileceğiniz anlamına gelir. Bir dizinde, yazma izni dizindeki dosyaları ekleyebileceğiniz, kaldırabileceğiniz ve yeniden adlandırabileceğiniz anlamına gelir. Bu, bir dosyanın yazma izni varsa, dosyanın içeriğini değiştirmenize izin verilir.

Çalıştır: Normal bir dosya söz konusu olduğunda, dosyayı bir program veya kabuk betiği olarak çalıştırabilirsiniz.

Dosya izinleri nasıl ayarlanır - sayısal mod


Chmod komutuyla izinleri değiştirmenin yolu, dosya için her izin kümesini belirtmek üzere bir sayı kullanmaktır.

Her izne, aşağıdaki tabloda gösterildiği gibi bir değer atanır ve her izin kümesinin toplamı bu küme için bir sayı sağlar.

Numara Sekizli sayı ref
0 İzin yok ---
1 Çalıştırma -X
2 Yazma İzni -W-
3 Çalıştırma ve yazma izni: 1 (çalıştırma) + 2 (yazma) = 3 -wx
4 Okuma izni r--
5 Okuma ve çalıştırma izni: 4 (okuma) + 1 (çalıştırma) = 5 rx
6 Okuma ve yazma izni: 4 (okuma) + 2 (yazma) = 6 rw
7 Tüm izinler: 4 (okuma) + 2 (yazma) + 1 (çalıştırma) = 7 rwx

İzinler sayısal olarak da temsil edilebilir:

r = 4; w = 2; x = 1

ilk sayı Sahip iznini temsil eder; ikincisi Grup izinlerini temsil eder; ve son sayı diğer tüm kullanıcıların izinlerini temsil eder. Sayılar rwx dizesinin ikili gösterimidir.

php chmod

Her bir bölümü meta dosya izinlerinin (yukarıdaki örnekten) 664 olmasını sağlayacak şekilde ekleyin. İşte bu sayıya nasıl bulduğumuzun, incelemenin başka bir yolu:

- (RW -) (RW -) (r--)
- (42 -) (42 -) (4--)
664
Lütfen konu haricinde soru sormayın cevaplanmayacaktır. Yorumunuz onaylandıktan sonra yayınlanacaktır. Lütfen Yukarıda ki mesajları okuyun tekrar aynı soruları sormayın.

5709

KATEGORİ
  • HTML
  • CSS
  • PHP
  • JQUERY
  • PHOTOSHOP
  • JavaScript
  • Web Dünyası
  • Linux
  • MİTHRİL FRAMEWORK
  • Laravel
  • Git
  • React
POPÜLER MAKALE
  • HTML LİNK(Bağlantı)EKLEME - LİNK VERME
  • HTML YAZI VE RESİM ORTALAMA
  • HTML RESME LİNK VERME
  • HTML FORM OLUŞTURMA
  • CSS YATAY MENÜ YAPIMI
  • HTML RESİM EKLEME
  • CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
  • HTML DİV ve SPAN NEDİR?
  • HTML ARKAPLANA MÜZİK EKLEME
  • KALİTE KAYBETMEDEN RESİMLERİ BÜYÜTME
ETİKET
WEBCEBİR © 2013 Tüm hakları saklıdır.