Saya mencoba untuk membuka file dan menulis dengan PHP di /var/www
folder tetapi tidak berfungsi, jadi saya lakukan
sudo chmod 777 /var/www
sekarang saya ingin mengatur izin untuk /var/www
ke default.
untuk apa ijin default /var/www
?
Saya mencoba untuk membuka file dan menulis dengan PHP di /var/www
folder tetapi tidak berfungsi, jadi saya lakukan
sudo chmod 777 /var/www
sekarang saya ingin mengatur izin untuk /var/www
ke default.
untuk apa ijin default /var/www
?
Jawaban:
Izin default untuk /var/www
dirinya sendiri adalah yang cukup standar: pemilik root:root
dan mod 755
.
Adapun apa pun di dalamnya /var/www
, itu adalah salah satu direktori langka di mana Anda memiliki hak istimewa untuk memutuskan sendiri apa yang akan dimasukkan ke dalamnya dan izin apa yang harus dimiliki oleh semua yang ada di dalamnya. Tetapi yang paling masuk akal adalah:
Sebagian besar file harus dapat ditulisi oleh pengguna atau grup mana pun yang paling akan menulis kepada mereka. Anda dapat mengatur agar dimiliki oleh akun pengguna Anda. Atau buat grup khusus untuk pengembang Anda. Atau jika file jarang akan dimodifikasi dan Anda ingin keamanan yang baik, Anda dapat pergi root:root
dan hanya sudo pada kesempatan langka mereka akan diubah.
Sebagian besar file tidak dapat ditulis oleh dunia. Jadi, 644
untuk file, dan 755
untuk direktori sesuai (atau 664
dan 775
jika Anda ingin memberikan akses tulis grup).
Hal ini tidak dianjurkan untuk mengatur semua itu dapat ditulis oleh server web, yaitu www-data
, kecuali untuk spesifik file script web Anda untuk dapat menulis. Jika demikian, lebih baik untuk mengatur pengguna atau grup dari file-file itu www-data
daripada membuatnya bisa ditulis dunia. Perhatikan bahwa setiap saat www-data
pengguna dapat menulis ke file apa pun di dalam root web, apakah itu dengan mengatur pengguna atau grup pada file-file itu, atau menjadikannya dapat ditulis oleh dunia, ini merupakan masalah keamanan potensial. Dunia yang bisa ditulis hanyalah yang terburuk dari keduanya.
Pastikan grup tersebut adalah www-data di '/ var / www'.
sudo chgrp www-data /var/www
Buat itu bisa ditulis
sudo chmod 775 /var/www
atur id grup untuk subfolder
sudo chmod g+s /var/www
tambahkan nama pengguna Anda ke grup
sudo useradd -G www-data [USERNAME]
OR
usermod -a -G www-data [USERNAME]
berikan diri Anda kepemilikan
sudo chown [USERNAME] /var/www/
sudo adduser $USER www-data
sudo chown root:root /var/www
sudo chown -R $USER:www-data /var/www/*
sudo chmod -R 755 /var/www
-R
bendera di sini. Karena OP tidak menggunakan -R
bendera, kami tidak boleh merekomendasikannya untuk memperbaiki izin yang salah yang mereka buat. The -R
bendera jarang membantu!