Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pengoptimuman prestasi PHP-FPM: langkah untuk meningkatkan keselamatan dan kestabilan laman web

Pengoptimuman prestasi PHP-FPM: langkah untuk meningkatkan keselamatan dan kestabilan laman web

WBOY
WBOYasal
2023-10-05 10:49:021042semak imbas

Pengoptimuman prestasi PHP-FPM: langkah untuk meningkatkan keselamatan dan kestabilan laman web

Pengoptimuman prestasi PHP-FPM: langkah untuk meningkatkan keselamatan dan kestabilan laman web

Dengan perkembangan pesat Internet, pengoptimuman prestasi laman web menjadi semakin penting. Dalam pembangunan PHP, PHP-FPM (Pengurus Proses FastCGI) ialah penyelesaian PHP biasa yang digunakan untuk meningkatkan prestasi dan kestabilan laman web. Walau bagaimanapun, tidak cukup dengan hanya memasang dan mengkonfigurasi PHP-FPM Beberapa langkah perlu diambil untuk mengoptimumkan lagi prestasi dan meningkatkan keselamatan dan kestabilan tapak web. Artikel ini akan memperkenalkan beberapa contoh kod khusus untuk membantu anda melaksanakan pengoptimuman prestasi PHP-FPM dengan lebih baik.

  1. Konfigurasikan kumpulan proses PHP-FPM

Pertama, kita perlu mengkonfigurasi kumpulan proses PHP-FPM dengan munasabah. Dengan melaraskan parameter seperti bilangan proses dan bilangan maksimum permintaan, PHP-FPM boleh memenuhi keperluan tapak web dengan lebih baik. Berikut ialah contoh konfigurasi kumpulan proses PHP-FPM:

[www]
user = www-data
group = www-data
listen = /var/run/php/php7.4-fpm.sock
listen.owner = www-data
listen.group = www-data

pm = dynamic
pm.max_children = 20
pm.start_servers = 5
pm.min_spare_servers = 2
pm.max_spare_servers = 8
pm.process_idle_timeout = 10s
pm.max_requests = 500

Dalam contoh ini, kami menggunakan mod pengurusan proses dinamik (pm = dinamik), tetapkan bilangan maksimum proses anak kepada 20 (pm.max_children), dan mulakan proses anak Nombornya ialah 5 (pm.start_servers), bilangan minimum proses anak terbiar ialah 2 (pm.min_spare_servers), bilangan maksimum proses anak terbiar ialah 8 (pm.max_spare_servers), tamat masa proses melahu ialah 10 saat ( pm.process_idle_timeout), permintaan maksimum Bilangan kali ialah 500 (pm.max_requests).

Parameter ini boleh dilaraskan mengikut keperluan berdasarkan beban laman web sebenar. Dengan mengkonfigurasi kumpulan proses PHP-FPM dengan betul, prestasi dan penggunaan sumber boleh menjadi lebih seimbang.

  1. Menggunakan OPcache

OPcache ialah sambungan terbina dalam untuk PHP yang digunakan untuk cache dan meningkatkan prestasi pelaksanaan skrip PHP. Mendayakan OPcache boleh mengurangkan masa penyusunan skrip PHP dan mengurangkan beban pada pelayan. Berikut ialah contoh konfigurasi OPcache:

[opcache]
zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.validate_timestamps=0
opcache.revalidate_freq=60

Dalam contoh ini, kami telah mendayakan OPcache (opcache.enable=1), tetapkan penggunaan memori kepada 128MB (opcache.memory_consumption), dan penimbal rentetan yang diinternalkan kepada 8MB (opcache. interned_strings_buffer) , bilangan maksimum fail cache ialah 4000 (opcache.max_accelerated_files), pengesahan cap waktu skrip dibatalkan (opcache.validate_timestamps=0), dan kekerapan pengesahan semula ditetapkan kepada 60 saat (opcache.revalidate_freq).

Dengan menggunakan OPcache, prestasi pelaksanaan skrip PHP boleh dipertingkatkan dengan ketara dan beban pada pelayan dapat dikurangkan.

  1. Hidupkan tetapan keselamatan PHP

Untuk meningkatkan keselamatan tapak web, kami juga perlu menghidupkan beberapa tetapan keselamatan PHP. Berikut ialah beberapa contoh biasa tetapan keselamatan PHP:

display_errors = Off
allow_url_fopen = Off
expose_php = Off
open_basedir = /var/www/html:/tmp
disable_functions = exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source

Dalam contoh ini, kami mematikan paparan ralat (display_errors = Off), melumpuhkan operasi fail jauh (allow_url_fopen = Off), dan menyembunyikan maklumat versi PHP (expose_php = Off ), tetapkan sekatan akses berasaskan direktori PHP (open_basedir = /var/www/html:/tmp), dan lumpuhkan beberapa fungsi PHP berbahaya (disable_functions).

Dengan menghidupkan tetapan keselamatan ini, anda boleh mengurangkan risiko serangan tapak web dan meningkatkan keselamatan tapak web dengan berkesan.

Ringkasan:

Dengan mengkonfigurasi kumpulan proses PHP-FPM dengan betul, menggunakan OPcache dan menghidupkan tetapan keselamatan PHP, anda boleh mengoptimumkan lagi prestasi PHP-FPM dan meningkatkan keselamatan dan kestabilan tapak web. Di atas hanyalah beberapa contoh mudah, dan konfigurasi khusus perlu diselaraskan mengikut situasi sebenar. Melalui pengoptimuman dan penambahbaikan berterusan, kami boleh menjadikan PHP-FPM berprestasi lebih baik dan memberikan pengguna pengalaman laman web yang lebih baik.

Atas ialah kandungan terperinci Pengoptimuman prestasi PHP-FPM: langkah untuk meningkatkan keselamatan dan kestabilan laman web. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn