Nginx ialah perisian pelayan web berprestasi tinggi dan berkonkurensi tinggi, dan PHP ialah bahasa pembangunan biasa yang boleh digunakan oleh Nginx. Walau bagaimanapun, apabila menggunakan Nginx, anda mungkin menghadapi masalah fail PHP tidak dilaksanakan. Ini biasanya disebabkan oleh tamat masa pelaksanaan PHP. Nah, artikel ini akan memperkenalkan cara menyelesaikan masalah ini dengan menetapkan masa pelaksanaan PHP dalam Nginx.
Langkah 1: Lihat tetapan masa pelaksanaan PHP semasa
Sebelum anda mula melaraskan masa pelaksanaan PHP Nginx, anda perlu memahami tetapan semasa. Anda boleh menyemak tetapan masa pelaksanaan PHP semasa dengan melaksanakan arahan berikut:
php -i | grep "max_execution_time"
Ini akan mengeluarkan had masa pelaksanaan PHP semasa. Secara lalai, ia ditetapkan kepada 30 saat.
Langkah 2: Ubah suai tetapan masa pelaksanaan PHP dalam Nginx
Untuk menukar tetapan masa pelaksanaan PHP dalam Nginx, anda perlu mengedit fail konfigurasi tapak web Nginx. Dalam contoh ini, kami menganggap bahawa fail konfigurasi tapak web Nginx anda terletak dalam direktori /etc/nginx/sites-available/ dan menamakannya example.com.
Buka fail example.com dan cari kod berikut:
location ~ \.php$ { fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
Dalam blok kod ini, anda perlu menambah arahan fastcgi_read_timeout. Arahan ini digunakan untuk menetapkan masa pelaksanaan skrip PHP dalam beberapa saat.
location ~ \.php$ { fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_read_timeout 300; # 5 minutes }
Dalam contoh ini, kami memanjangkan masa pelaksanaan PHP kepada 5 minit.
Langkah 3: Muat semula konfigurasi Nginx dan uji
Anda telah menukar tetapan masa pelaksanaan PHP dalam Nginx. Sekarang, anda perlu memuatkan semula fail konfigurasi Nginx untuk perubahan berkuat kuasa.
sudo systemctl reload nginx
Seterusnya, anda boleh menguji sama ada masa pelaksanaan PHP telah berjaya ditukar. Anda boleh menguji ini dengan mencipta skrip PHP mudah.
<?php sleep(300); # sleep for 5 minutes echo "Hello World!"; ?>
Simpan kod di atas sebagai test.php dan muat naik ke direktori web dalam pelayan Nginx anda. Kini anda boleh mengakses fail dalam pelayar web anda dan tunggu 5 minit untuk melihat sama ada output adalah betul.
Ringkasan
Kini, anda telah mempelajari cara menyelesaikan masalah skrip PHP yang tidak dilaksanakan dengan menetapkan masa pelaksanaan PHP dalam Nginx. Dengan mengikuti langkah-langkah dalam artikel ini untuk menyediakannya, anda boleh memastikan bahawa skrip PHP anda dilaksanakan sepenuhnya tanpa perlu risau tentang tamat masa pelaksanaan PHP.
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika fail php nginx tidak mengambil masa pelaksanaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!