Rumah >pembangunan bahagian belakang >tutorial php >Susun dan ringkaskan bahagian kebenaran nginx, php-fpm, mysql, dll.

Susun dan ringkaskan bahagian kebenaran nginx, php-fpm, mysql, dll.

青灯夜游
青灯夜游ke hadapan
2022-06-14 12:17:553954semak imbas

Artikel ini akan membincangkan tentang pengetahuan asas PHP dan memberi anda pemahaman yang mendalam tentang kebenaran pengguna nginx, php-fpm dan mysql. Saya harap ia akan membantu semua orang!

Susun dan ringkaskan bahagian kebenaran nginx, php-fpm, mysql, dll.

Biasanya, pelayan yang kami jalankan aplikasi web termasuk pengedaran Linux seperti CentOS, Ubuntu, Debian, dll. Pada masa ini, kawalan kebenaran Nginx, PHP, MySQL dan aplikasi lain yang diperlukan untuk membentuk seni bina perkhidmatan menjadi sangat penting Setiap perkhidmatan mempunyai keperluan kebenaran yang berbeza untuk direktori kod perkhidmatan tidak boleh membaca atau menulis atau Ralat operasi, keperluan kebenaran yang lebih rendah dan risiko pencerobohan dan pengubahsuaian . Di sini kami akan meringkaskan bahagian kebenaran perkhidmatan seperti nginx, php-fpm dan mysql.

1. Keizinan Nginx pelayan web

Rangka kerja PHP biasanya digabungkan dengan Nginx untuk membentuk LNMP atau digabungkan dengan Apache untuk membentuk seni bina LAMP Di sini, Nginx digunakan sebagai contoh untuk menerangkan apa yang diperlukan untuk menjalankan perkhidmatan Nginx.
Kami tahu bahawa Nginx sendiri tidak boleh menghuraikan sintaks PHP, jadi Nginx akan menghuraikan secara langsung dan mengembalikan hasil untuk fail statik (seperti HTML, dll.), tetapi untuk fail PHP, Nginx akan memindahkannya ke php penterjemah PHP -fpm Proseskannya, dan kemudian kembalikan respons kepada pelayar klien selepas diproses.

Oleh itu, kami perlu menyatukan kebenaran yang diperlukan untuk perkhidmatan Nginx dan PHP dalam direktori kod kami.

① Jika pengguna root digunakan secara seragam, akaun tetamu umum tidak akan dapat mengakses aplikasi Jika nginx dikonfigurasikan untuk dijalankan sebagai root, akan ada risiko keselamatan yang besar identiti akar akan diperolehi Semua operasi sistem.

② Jika semua kebenaran direktori kod ditetapkan kepada rwxrwxrwx, terdapat bahaya tersembunyi bahawa pengguna boleh mengubah suai direktori kod terus melalui penyemak imbas.

Jadi cara terbaik ialah mengklasifikasikan mereka ke dalam kumpulan pengguna baharu, dan memberikan kumpulan pengguna kebenaran yang diperlukan untuk menjalankan Nginx dan PHP untuk mencapai kebenaran untuk pengurusan Direktori. Biasanya, banyak pasukan akan menamakan kumpulan pengguna ini www, Pengguna www akan mengurus kebenaran direktori kod secara seragam.

Kita dapat melihat bahawa kebenaran berjalan yang dibahagikan dalam fail konfigurasi Nginx nginix.conf dikonfigurasikan di bawah pengguna www, jadi proses anak Nginx juga dilaksanakan oleh pengguna www, yang boleh dilihat melalui ps aux | grep nginx :

Susun dan ringkaskan bahagian kebenaran nginx, php-fpm, mysql, dll.

Anda boleh melihat bahawa proses utama nginx ialah root, dan sub-proses lain adalah semua pengguna www

nginx. konfigurasi conf:

Susun dan ringkaskan bahagian kebenaran nginx, php-fpm, mysql, dll.

2 konfigurasi kebenaran PHP

Begitu juga, PHP juga dijalankan oleh akar proses utama, dalam anak. kumpulan proses (pool) Konfigurasi di dalam dilaksanakan oleh pengguna www. Konfigurasi khusus berada di bawah <code><span style="color: rgb(192, 0, 0);">etcphp-fpm.conf</span>etcphp-fpm.conf

dalam direktori akar php >
user = www
group = www

, anda juga boleh menggunakan ps aux | grep php untuk melihat identiti pengguna yang digunakan oleh proses:

Susun dan ringkaskan bahagian kebenaran nginx, php-fpm, mysql, dll.

3. Konfigurasi kebenaran bagi Perkhidmatan MySQL

melalui ps aux | grep mysqlAnda boleh melihat bahawa perkhidmatan MySQL berjalan di bawah pengguna mysql Perkhidmatan hanya memerlukan kami membawa nama pengguna dan kata laluan mysql apabila kod php bersambung ke mysql Ia tidak perlu disatukan ke www , kerana lapisan data perlu diasingkan daripada lapisan logik perniagaan untuk memastikan keselamatan data asas. Keizinan mysql adalah terutamanya untuk menambah pengguna baharu dan membahagikan kebenaran dalam perkhidmatan mysql, yang digunakan untuk mengawal perniagaan PHP yang berbeza untuk berhubung dengan identiti dengan julat kebenaran yang berbeza untuk memastikan keselamatan data.

Susun dan ringkaskan bahagian kebenaran nginx, php-fpm, mysql, dll.

4 Ringkasan

konfigurasi nginx:

user www www;

php-fpm:
<.>

user = www
group = www
Direktori:


drwxr-xr-x 就是755
Pembelajaran yang disyorkan: "

Tutorial Video PHP"

Atas ialah kandungan terperinci Susun dan ringkaskan bahagian kebenaran nginx, php-fpm, mysql, dll.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam