Rumah > pembangunan bahagian belakang > masalah PHP > Apakah yang perlu saya lakukan jika fail php nginx tidak mengambil masa pelaksanaan?

Apakah yang perlu saya lakukan jika fail php nginx tidak mengambil masa pelaksanaan?

PHPz
Lepaskan: 2023-03-29 11:44:08
asal
569 orang telah melayarinya

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"
Salin selepas log masuk

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;
}
Salin selepas log masuk

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
}
Salin selepas log masuk

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
Salin selepas log masuk

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!";
?>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan