ทำไมเซิร์ฟเวอร์ dev ของ Django ใช้พอร์ต 8000 โดยค่าเริ่มต้น


9

(คำถามของฉันไม่ได้เกี่ยวกับ Django จริงๆมันเกี่ยวกับพอร์ต http อื่นฉันเพิ่งรู้ว่า Django เป็นแอปพลิเคชั่นที่มีชื่อเสียงที่ใช้ 8000 โดยค่าเริ่มต้นดังนั้นมันจึงเป็นตัวอย่าง)

ฉันมีเซิร์ฟเวอร์ dev ในเซิร์ฟเวอร์ที่บางครั้งเราจำเป็นต้องเรียกใช้บริการ httpd หลายบริการบนพอร์ตที่แตกต่างกัน เมื่อฉันต้องการยืนบริการที่สามและเราใช้พอร์ต 80 และ 8080 แล้วฉันค้นพบทีมรักษาความปลอดภัยของเราได้ล็อคการเข้าถึงพอร์ต 8000 จากอินเทอร์เน็ต ฉันรู้ว่าพอร์ต 80 เป็นพอร์ต http มาตรฐานและ 8080 นั้นเป็น http_alt ทั่วไป แต่ฉันต้องการทำเรื่องนี้กับทีมรักษาความปลอดภัยของเราเพื่อเปิด 8000 เช่นกัน เพื่อที่จะทำให้กรณีนี้ฉันหวังว่าคำตอบสำหรับคำถามนี้สามารถให้ฉันอาร์กิวเมนต์ที่เหมาะสมสำหรับการใช้พอร์ต 8000 มากกว่า 8080 ในบางกรณี

หรือมันเป็นเพียงตัวเลือกแบบสุ่มโดยไม่มีความหมาย?


1
บางครั้งหมายเลขพอร์ตเป็นเพียงหมายเลขพอร์ต (และตราบใดที่มันมี> 1024 ระบบปฏิบัติการไม่สนใจ - IANA จะขอบคุณถ้าคุณลงทะเบียนหมายเลขที่คุณต้องการแทนที่จะเพิ่งคว้ามันและหวังว่าจะไม่มีใครใช้มัน)
voretaq7

คำตอบ:


14

เหตุผลที่ไม่ใช้ 80 คือคุณต้องรูทเพื่อใช้พอร์ตใด ๆ ที่ต่ำกว่า 1024 เนื่องจากพอร์ตเหล่านั้นเป็นพอร์ตที่มีสิทธิพิเศษ ตอนนี้คุณสามารถเริ่มเซิร์ฟเวอร์ dev ที่พอร์ตอื่นโดยการเรียกใช้

python manage.py runserver 0.0.0.0:8080

ที่จะผูกเซิร์ฟเวอร์ dev กับ ips ทั้งหมดบนพอร์ต 8080 โดยทั่วไปตัวเลือกของ 8000 นั้นเพิ่งเพิ่ม 2 0 ไปยังพอร์ต http ปกติ นอกจากนี้เนื่องจาก 8080 ยังเป็นที่นิยมและอาจมีการใช้งานแล้ว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.