Bagaimana Meningkatkan Had Saiz Upload Fail PHP
Jika anda mempunyai aplikasi web yang memuat naik fail ke pelayan melalui skrip PHP, anda mungkin perhatikan bahawa secara lalai anda tidak boleh memuat naik fail yang sangat besar. Inilah caranya untuk mengubahnya.
Alasan had ditetapkan agak rendah secara lalai adalah untuk kestabilan dan sebab keselamatan - skrip jahat atau penyerang boleh cuba untuk DoS pelayan anda dengan muat naik fail yang besar dan menutup aplikasi anda buat sementara waktu.
Untuk menukar nilai yang anda perlukan untuk mengedit fail php.ini anda, biasanya dijumpai pada laluan fail ini:
/etc/php.ini
Berikut ialah tetapan yang ingin anda ubah:
post_max_size
Tetapan ini mengawal saiz jawatan HTTP, dan perlu ditetapkan lebih besar daripada tetapan upload_max_filesize.
upload_max_filesize
Nilai ini menetapkan saiz maksimum fail muat naik.
memory_limit
Anda akan memastikan had ingatan skrip anda ditetapkan pada saiz yang baik, mungkin lebih besar daripada kedua-dua tetapan yang lain.
Menetapkan Pembolehubah
Anda boleh menetapkan nilai dengan menggunakan nilai angka diikuti oleh M untuk jumlah MB yang anda mahu peruntukkan untuk setiap pembolehubah. Sebagai contoh, untuk membolehkan fail 20MB dimuat naik, anda akan menggunakan sesuatu seperti ini:
memory_limit = 64M
upload_max_filesize = 20M
post_max_size = 25M
Anda perlu memulakan semula pelayan Apache sebaik sahaja anda membuat perubahan ini, dengan arahan ini:
/etc/init.d/httpd restart
Menetapkan Saiz Unggah Per Permohonan
Anda boleh membuat perubahan ini untuk aplikasi web tertentu dengan memasukkannya ke fail .htaccess, dalam direktori aplikasi. Perhatikan bahawa ini hanya akan berfungsi jika pelayan anda telah menghidupkan tida untuk hos maya atau pelayan anda.
Sebagai contoh, anda boleh memasukkan yang berikut ke dalam fail:
php_value memory_limit = 64M
php_value upload_max_filesize = 20M
php_value post_max_size = 25M
Sebaik sahaja anda menyimpan fail itu, perubahan itu perlu digunakan.