Saya mencoba mengunggah file 30MB di server saya dan tidak berfungsi.
Ketika saya mengunggah file 30MB, halaman memuat " Halaman Tidak Ditemukan "
Ketika saya mengunggah file 3MB, saya menerima " 413 Request Entity Too Large " dengan nginx / 0.6.32
Saya mencoba mencari nginx sehingga saya dapat meningkatkan " client_max_body_size " tetapi saya tidak dapat menemukan nginx yang terinstal di server saya. Saya bahkan mencoba berlari:
vi /etc/nginx/nginx.conf
atau
vi /usr/local/nginx/conf/nginx.conf
untuk memeriksa apakah file konfigurasi ada, tetapi saya tidak dapat menemukannya di server saya.
Apakah ada cara untuk menyelesaikan masalah ini? Atau apakah saya harus menginstal nginx di server saya.
EDIT:
Saya telah membuat semua perubahan yang diperlukan dalam file php.ini saya,
post_max_size 128M
upload_max_filesize 100M
memory_limit 256M
Terima kasih, Raju
ps aux | grep nginx
untuk melihat apakah itu berjalan?which nginx
? Itu akan memberi Anda lokasi file yang dapat dieksekusi, bukan file konfigurasi, tetapi setidaknya harus mengkonfirmasi apakah nginx diinstal atau tidak.Jawaban:
Sumber: http://www.cyberciti.biz/faq/linux-unix-bsd-nginx-413-request-entity-too-large/
Edit file conf nginx:
Tambahkan baris di bagian http:
http { client_max_body_size 100M; }
Jangan gunakan MB itu tidak akan berhasil, hanya M!
Juga jangan lupa restart nginx
sumber
http { }
bagian, tambahkan sisa di dalamnya! Menambahkanhttp {}
bagian baru akan gagal dan memberikan"http" directive is duplicate
kesalahan pada log Nginx.-di php.ini (di dalam /etc/php.ini)
max_input_time = 24000 max_execution_time = 24000 upload_max_filesize = 12000M post_max_size = 24000M memory_limit = 12000M
-in nginx.conf (di dalam / opt / nginx / conf)
client_max_body_size 24000M
Ini bekerja untuk kasus saya
sumber
Pertama edit file konfigurasi Nginx (
nginx.conf
)Lokasi:
sudo nano /etc/nginx/nginx.conf
Tambahkan kode berikut:
http { client_max_body_size 100M; }
Kemudian Tambahkan baris berikut di file konfigurasi PHP (
php.ini
)Lokasi:
sudo gedit /etc/php5/fpm/php.ini
Tambahkan kode berikut:
memory_limit = 128M post_max_size = 20M upload_max_filesize = 10M
sumber
nginx.conf
file saya seperti yang diinstruksikan, tetapi file itu kosong! Saya tidak mengharapkan itu, tetapi ketika saya menambahkan kode Anda, itu masih berfungsi ... seperti yang saya kira orang akan harapkan, tetapi untuk beberapa alasan saya tidak dan saya sangat senang ketika itu terjadi!Silakan masukkan file nginx domain:
Tambahkan ke file kode ini
client_max_body_size 24000M;
Jika Anda mendapatkan kesalahan gunakan perintah ini
sumber
Saya menambahkan perubahan langsung ke virtualhost saya, bukan konfigurasi global nginx, seperti ini:
server { client_max_body_size 100M; ... }
Dan kemudian saya mengubah params di php.ini, seperti komentar di atas:
max_input_time = 24000 max_execution_time = 24000 upload_max_filesize = 12000M post_max_size = 24000M memory_limit = 12000M
dan yang tidak bisa anda lupakan adalah restart nginx dan php-fpm, di centos 7 seperti ini:
sumber
Kemudian tambahkan baris di bagian http
http { client_max_body_size 100M; }
jangan gunakan MB hanya M.
lalu untuk lokasi php
untuk saat ini penggunaan maksimum php 7.0 atau lebih tinggi
sudo nano /etc/php/7.2/fpm/php.ini //7.3,7.2 or 7.1 which php you use
periksa mereka yang meningkat dengan keinginan Anda.
memory_limit = 128M post_max_size = 20M upload_max_filesize = 10M
mulai ulang php-fpm
sumber
Dengan asumsi Anda telah membuat perubahan yang diperlukan pada file php.ini Anda:
Anda dapat mengatasi masalah ini dengan menambahkan baris berikut di file nginx.conf Anda yang ditemukan di jalur berikut:
kemudian edit file menggunakan editor teks vim sebagai berikut:
dan tambahkan client_max_body_size dengan nilai yang cukup besar, misalnya:
client_max_body_size 20MB;
Setelah itu pastikan Anda menyimpan menggunakan
:xi
atau:wq
Dan kemudian restart nginx Anda.
Itu dia.
Berhasil untuk saya, semoga ini membantu.
sumber
Saya mendapatkan unggahan bekerja dengan perubahan di atas. Tetapi ketika saya melakukan perubahan, saya mulai mendapatkan respons 404 dalam unggahan file yang membuat saya melakukan debugging lebih lanjut dan menemukan masalah izin dengan memeriksa nginx error.log
Larutan:
Periksa kepemilikan pengguna dan grup saat ini di / var / lib / nginx.
$ ls -ld /var/lib/nginx
drwx ------. 3 nginx nginx 17 5 Okt 19:31 / var / lib / nginx
Ini memberi tahu bahwa pengguna dan grup yang mungkin tidak ada bernama nginx memiliki folder ini. Ini mencegah pengunggahan file.
Dalam kasus saya, nama pengguna yang disebutkan di "/etc/nginx/nginx.conf" adalah
Ubah kepemilikan folder menjadi pengguna yang ditentukan di nginx.conf dalam hal ini gelandangan.
$ sudo chown -Rf vagrant:vagrant /var/lib/nginx
Verifikasi bahwa itu benar-benar berubah.
$ ls -ld /var/lib/nginx drwx------. 3 vagrant vagrant 17 Oct 5 19:31 /var/lib/nginx
Muat ulang nginx dan php-fpm untuk sade yang lebih aman.
Kesalahan izin ditolak sekarang akan hilang. Periksa error.log (berdasarkan lokasi error_log nginx.conf).
$ sudo nano /path/to/nginx/error.log
sumber
Buka file
/etc/nginx/nginx.conf
Tambah atau ubahclient_max_body_size 0;
sumber
Menggunakan:
perintah atau tambahkan:
untuk mendapatkan lokasi file konfigurasi.
Perbarui variabel ini sesuai kebutuhan dan server Anda
max_input_time = 24000 max_execution_time = 24000 upload_max_filesize = 12000M post_max_size = 24000M memory_limit = 12000M
Di Linux Anda perlu me-restart layanan nginx / apache dan phpfpm agar pengaturan ini dimuat. Di xampp, ammps Anda dapat memulai ulang ini dari panel kontrol yang disertakan dengan aplikasi semacam itu.
sumber