SSH Ubah kepemilikan public_html

Kepemilikan default untuk public_html adalah myusername:nobody

drwxr-xr--. 18 myusername nobody       4096 Jun  1 16:06 public_html/

Saya mengubahnya menjadi myusername:myusername karena saya perlu mengakses file di dalam public_html menggunakan perintah berikut

# chown myusername:myusername public_html

Itu berhasil dan kepemilikan berubah.

Sekarang saya tidak dapat mengubah kepemilikan kembali ke myusername:nobody. Saya menggunakan perintah ini

chown livegiftcard:nobody public_html

dan itu memberi saya kesalahan

chown: mengubah kepemilikan âpublic_htmlâ: Operasi tidak diizinkan

Saya juga telah mengujinya dengan sudo dan juga chgrp tetapi tidak berhasil.

Saya juga tidak dapat menjalankan situs web saya. Browser memberi saya kesalahan berikut.

Terlarang

Anda tidak memiliki izin untuk mengakses / di server ini. Server tidak dapat membaca file htaccess, menolak akses agar aman

Selain itu, kesalahan 403 Terlarang terjadi saat mencoba menggunakan ErrorDocument untuk menangani permintaan


person saiid    schedule 02.06.2016    source sumber


Jawaban (1)


Masalah: Apache/nginx memiliki pengguna yang perlu membaca file di Docroot. Pengguna dan grup default adalah: www-data:www-data. Saya bukan pengguna jika ini benar dalam kasus Anda.

Sekarang file tersebut dimiliki oleh nama pengguna saya: nama pengguna saya dan pengguna Apache/nginx mungkin tidak ada dalam grup "nama pengguna saya". Jadi jika Anda memiliki pengetahuan tentang sistem izin linux, pengguna server web hanya memiliki hak yang dimiliki semua orang (kolom ketiga). Ketika grup disetel ke siapa pun, file tersebut tidak dimiliki oleh grup mana pun dan setiap pengguna dapat bertindak berdasarkan izin grup. Dalam kasus Anda, saya kira grup dapat membaca semua file dan semua file lainnya tidak.

Apa yang dapat Anda lakukan: Memberikan hak kepada semua orang lain untuk membaca file tersebut

chmod -R o+r public_html

Sekarang semua orang, termasuk pengguna server web dapat membaca file dan Anda tidak akan mendapatkan kesalahan 403. -R untuk rekursif, jadi setiap file dan direktori di bawah public_html juga akan mendapatkan tanda yang dapat dibaca.

Hal lainnya adalah menambahkan pengguna server web ke grup "nama pengguna saya" sehingga pengguna server web juga dapat menggunakan izin grup.

Kemungkinan ketiga dan terakhir yang terlintas di benak saya adalah mengubah grup menjadi "nogroup" alih-alih "nobody" karena tidak ada yang menjadi pengguna dan nogroup sebagai grup.

person Dentastic    schedule 02.06.2016