Ini adalah cara paling ketat dan teraman yang saya temukan, seperti yang dijelaskan di sini untuk ~/my/web/root/
direktori hipotetis untuk konten web Anda:
- Untuk setiap direktori induk yang mengarah ke akar web Anda (misalnya
~/my
, ~/my/web
, ~/my/web/root
):
chmod go-rwx DIR
(tidak ada selain pemilik yang dapat mengakses konten)
chmod go+x DIR
(untuk mengizinkan "pengguna" termasuk _www untuk "memasukkan" direktori)
sudo chgrp -R _www ~/my/web/root
(semua konten web sekarang menjadi grup _www)
chmod -R go-rwx ~/my/web/root
(tidak ada selain pemilik yang dapat mengakses konten web)
chmod -R g+rx ~/my/web/root
(semua konten web sekarang dapat dibaca / dieksekusi / dimasukkan oleh _www)
Semua solusi lain membiarkan file terbuka untuk pengguna lokal lainnya (yang merupakan bagian dari grup "staf" dan juga berada di grup "o" / grup lain). Pengguna ini kemudian dapat dengan bebas menjelajahi dan mengakses konfigurasi DB, kode sumber, atau detail sensitif lainnya di file dan skrip konfigurasi web Anda jika itu adalah bagian dari konten Anda. Jika ini bukan masalah Anda, maka gunakan salah satu solusi yang lebih sederhana.
chmod go+rx DIR
pada tingkat direktori / Users / username sebelum ls berhenti memberikan kesalahan izin. Heran kenapachmod -R g+rwx ~/my/web/root
. Ada keberatan atau cara yang lebih baik untuk melakukan @dkamins ini?Jika Anda benar-benar tidak menyukai Terminal, inilah cara GUI untuk melakukannya dkamins memberi tahu Anda:
1) Buka direktori home pengguna Anda ( ludo akan menjadi milik saya) dan dari menu File pilih Get Info cmdI di inspektur:
2) Dengan alt/optionmengklik tanda [+] tambahkan grup _www dan setel izinnya menjadi read-only :
3) Tampilkan inspektur Dapatkan Info dari folder Situs pengguna Anda dan ulangi langkah 2 lalu dari sub-menu tindakan roda gigi pilih Terapkan ke Item terlampir ... :
Voilà 3 langkah dan GUI satu-satunya cara ...
sumber
ALT + [+]
triknya. Terima kasih.Saya tahu ini adalah posting lama, tetapi bagi siapa saja yang mengupgrade ke Mountain Lion (10.8) dan mengalami masalah serupa, menambahkan
FollowSymLinks
ke file {username} .conf Anda (di / etc / apache2 / users /) melakukan trik untuk saya. Jadi filenya terlihat seperti ini:sumber
Utas berusia 2 bulan, tetapi lebih baik terlambat daripada tidak sama sekali! Pada 10.6, saya menyetel folder dokumen server web saya ke:
_www adalah pengguna yang menjalankan apache di bawah Mac OS X. Saya kemudian menambahkan ACL untuk mengizinkan izin penuh ke grup Administrator. Dengan begitu, saya masih dapat membuat perubahan apa pun dengan pengguna admin saya tanpa harus mengautentikasi sebagai root. Juga, ketika saya ingin mengizinkan server web untuk menulis ke folder, saya cukup chmod ke 775, meninggalkan semua orang selain root: _www hanya dengan izin baca / eksekusi (tidak termasuk ACL yang telah saya terapkan)
sumber
Di sistem 10.6 saya:
sumber
Pemilik pengguna untuk saya adalah pengguna admin dan grupnya adalah _www dan bekerja dengan izin yang ditetapkan ke 775 untuk dir dan untuk file 664
sumber
Pembaruan Catalina / Izin Desktop
Saya menemukan ini setahun sekali di macOS. Saya biasanya menggunakan apache2 untuk menghosting folder di desktop saya.
Jika Anda mencoba memberikan akses ke
desktop
folder, Anda harus mengikuti ini untuk mengizinkan httpd memiliki akses ke semua folder: https://apple.stackexchange.com/a/373139/353465sumber
Buka terminal terlebih dahulu lalu masuk ke direktori web server
lalu ketikkan ini dan yang akan Anda lakukan adalah memberi
read
danwrite
mengizinkanIni pasti akan berhasil!
sumber