จำกัด ขนาดไฟล์อัพโหลดและเปลี่ยนเส้นทางผู้ใช้ไปยังหน้าข้อผิดพลาดหากเกินขีด จำกัด


9

เป็นไปได้หรือไม่ที่จะเปลี่ยนเส้นทางผู้ใช้ไปยังfile too bigหน้าไฟล์

เมื่อขนาดคำขอ POST เกินขีด จำกัด ที่ระบุไว้

ฉันรู้เกี่ยวกับตัวเลือกขนาดคำขอสูงสุด แต่มันให้เฉพาะหน้าสแตติกที่ไม่สามารถโหลดมากเกินไป

ฉันกำลังคิดที่จะสร้างกฎการเขียนซ้ำซึ่งใช้เวลา

ขนาดเนื้อหาจากเนื้อความคำขอเป็นอินพุตและเปลี่ยนเส้นทางไปยังหน้าข้อผิดพลาด

UPDATE

ตอนนี้เราใช้ nginx เป็นส่วนหน้า มีคำแนะนำใหม่ ๆ ไหม?

คำตอบ:


19

คุณควรทำสิ่งนี้โดยใช้สิ่งต่อไปนี้:

server {
  server_name example.com;

  client_max_body_size 10m; # or whatever size limit you want
  error_page 413 /custompage.html; # you can also use a named location here if you like
}

แต่สิ่งนี้จะไม่ทำงานกับเบราว์เซอร์ที่ทันสมัยส่วนใหญ่โชคไม่ดีที่พวกเขาไม่สามารถจัดการ 413 อย่างเหมาะสม ดังนั้นฉันกลัวมีวิธีการแก้ไขปัญหานี้ไม่มี (ดีถ้าคุณไม่สามารถแก้ไขเบราว์เซอร์ในปัจจุบันทั้งหมด)
rvs

7
คุณสามารถเปลี่ยนรหัสสถานะเป็นอย่างอื่นได้ด้วย error_page หากคุณไม่ต้องการส่งคืน 413 ให้กับลูกค้า error_page 413 = 403 /custompage.html; จะใช้ 403 เช่น
kolbyjack


0

เกี่ยวกับโพสต์ @quanta คุณยังสามารถใส่ค่าที่ต่ำกว่าใน php และใช้ php เพื่อแสดงข้อผิดพลาดและทำการเปลี่ยนเส้นทางได้อย่างถูกต้อง มันสามารถทำได้ในภาษาสคริปต์อื่น ๆ เช่นกัน :-)


ฉันไม่ได้พูดถึงสแต็คฝั่งเซิร์ฟเวอร์ของเรา PHP <> ทั่วโลก :)
jonny
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.