Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah data AJAX POST saya melebihi 2 juta aksara tiba kosong di sebelah PHP?

Mengapakah data AJAX POST saya melebihi 2 juta aksara tiba kosong di sebelah PHP?

DDD
DDDasal
2024-11-04 01:40:30821semak imbas

Why is my AJAX POST data exceeding 2 million characters arriving empty on the PHP side?

Had POST PHP/Apache/AJAX

Apabila cuba menghantar data POST melebihi 2 juta aksara melalui AJAX dalam jQuery, anda mungkin menghadapi isu di mana data diterima sebagai kosong di sebelah PHP. Ini selalunya disebabkan oleh pengehadan dalam pelbagai komponen sistem.

Apache

Apache mempunyai parameter yang dipanggil LimitRequestBody, yang secara lalai ditetapkan kepada sekitar 2GB. Jika saiz POST melebihi had ini, Apache akan menolak permintaan tersebut dan tiada data akan diterima di sebelah PHP. Semak log ralat Apache anda untuk mendapatkan butiran yang lebih khusus.

PHP

PHP mempunyai beberapa parameter yang boleh menjejaskan pengendalian data POST:

  • post_max_size : Ini secara langsung menentukan saiz maksimum data POST yang PHP boleh terima. Tetapkan nilai ini kepada amaun yang sesuai, memastikan ia lebih besar daripada data yang anda ingin siarkan.
  • upload_max_filesize: Walaupun mungkin tidak berkaitan, sesetengah pengguna telah melaporkan kejayaan dengan meningkatkan nilai ini.
  • max_input_time: Jika permintaan POST mengambil masa terlalu lama untuk diselesaikan, parameter ini boleh menyebabkan masalah. Tetapkannya kepada nilai yang sesuai atau tetapkannya kepada -1 untuk melumpuhkan sebarang tamat masa.
  • masa_pelaksanaan_maks: Walaupun tidak mungkin menjadi punca, ia patut memastikan nilai ini cukup tinggi untuk memproses permintaan POST yang besar.
  • memory_limit: Jika data POST melebihi had memori untuk proses PHP, ia boleh menyebabkan masalah. Laraskan nilai ini mengikut keperluan.

Pertimbangan Lain

  • Semak pengehadan dalam mana-mana pelayan proksi atau pengimbang beban di hadapan pelayan anda.
  • Pertimbangkan untuk memecahkan data POST yang besar kepada bahagian yang lebih kecil jika saiznya melebihi had sistem.

Atas ialah kandungan terperinci Mengapakah data AJAX POST saya melebihi 2 juta aksara tiba kosong di sebelah PHP?. 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