MC Toolkit

คู่มือ / เซิร์ฟเวอร์และประสิทธิภาพ

server-icon.png: ข้อกำหนดที่แน่นอน และ Management API ที่ไม่มีใครใช้

64x64, PNG, วางไว้ที่ root ของเซิร์ฟเวอร์ — ผิดข้อใดข้อหนึ่งไอคอนจะไม่ปรากฏขึ้นอย่างเงียบ ๆ พร้อมด้วย JSON-RPC management API ที่มาแทนการอ่านหน้าจอคอนโซล

ไอคอนเซิร์ฟเวอร์เป็นฟีเจอร์เล็ก ๆ ที่ไม่ให้อภัยที่สุดใน Minecraft เพราะทุกโหมดความล้มเหลว ดูเหมือนกันหมด: ไม่มีไอคอน ไม่มีข้อผิดพลาด

สามข้อกำหนดที่ต้องครบทั้งหมด

  1. ขนาด 64×64 พิกเซลเท่านั้น ไม่ใช่ 63 ไม่ใช่ 128 ตัวเซิร์ฟเวอร์ไม่ย่อขนาดให้
  2. รูปแบบ PNG ต้องเป็น PNG จริง ๆ ไม่ใช่ไฟล์ JPG ที่เปลี่ยนชื่อ
  3. ชื่อ server-icon.png วางไว้ที่ root ของเซิร์ฟเวอร์ — ข้าง ๆ server.properties ไม่ใช่ ไว้ในโฟลเดอร์ world

ผิดข้อใดข้อหนึ่ง เซิร์ฟเวอร์จะเริ่มทำงานตามปกติและแสดงไอคอนเริ่มต้น ขนาดผิดหรือ ไฟล์ที่ไม่ใช่ PNG จริงจะบันทึกข้อความหนึ่งบรรทัดตอนเริ่มทำงาน — Couldn't load server icon — แต่ไฟล์ ที่ตั้งชื่อผิดหรือวางผิดที่จะไม่บันทึกอะไรเลย (ถ้าไม่มี server-icon.png เลย เซิร์ฟเวอร์จะ fallback ไปใช้ icon.png ของ world เองถ้ามี)

สิ่งอื่น ๆ ที่ทำให้พังได้เช่นกัน

  • PNG แบบ interlaced เอดิเตอร์บางตัวบันทึกเป็น interlaced โดยค่าเริ่มต้น ตัวอ่านของ Minecraft จะปฏิเสธ ส่งออกใหม่แบบ non-interlaced
  • ความลึกสี 16-bit บันทึกเป็น 8-bit ต่อช่องสัญญาณ
  • โปรไฟล์สี ICC profile ที่ฝังมาบางครั้งทำให้ตัวแยกวิเคราะห์สะดุด ลบ metadata ตอนส่งออก
  • ความโปร่งใสใช้ได้ และแสดงผลถูกต้องในรายการเซิร์ฟเวอร์

เซิร์ฟเวอร์อ่านมันแค่ครั้งเดียว

เซิร์ฟเวอร์โหลด server-icon.png ตอนเริ่มทำงานและไม่โหลดอีกเลย การแทนที่ไฟล์บน เซิร์ฟเวอร์ที่กำลังทำงานอยู่จะไม่เปลี่ยนแปลงอะไรจนกว่าจะรีสตาร์ท — ซึ่งเป็นเหตุผลว่าทำไมการทดสอบ เปลี่ยนไอคอนโดยไม่รีสตาร์ทจะทำให้คุณคิดว่ามันไม่ทำงาน หลังรีสตาร์ท ไคลเอนต์จะรับไอคอนใหม่ ในการรีเฟรชรายการเซิร์ฟเวอร์ครั้งถัดไป

Management API

เซิร์ฟเวอร์เวอร์ชันใหม่ ๆ เปิดให้ใช้ส่วนติดต่อจัดการแบบ JSON-RPC ซึ่งเป็น ตัวแทนที่ได้รับการรับรองสำหรับการแยกวิเคราะห์เอาต์พุตคอนโซลหรือการพ่วงปลั๊กอิน

เปิดใช้งานใน server.properties:

management-server-enabled=true
management-server-host=localhost
management-server-port=25585
management-server-tls-enabled=false

TLS เปิด อยู่โดยค่าเริ่มต้นและต้องใช้ keystore (management-server-tls-keystore) ดังนั้น ไม่ชี้ไปที่ keystore หรือ — เฉพาะบน localhost — ปิดมันตามข้างบน ถ้าเปิด TLS และไม่มี keystore management server จะไม่เริ่มทำงาน พอร์ตก็ไม่มีค่าเริ่มต้นเช่นกัน (25585 เป็นแค่ตัวอย่าง)

จากนั้นเปิด WebSocket ไปที่พอร์ตนั้น ส่ง management-server-secret จาก server.properties เป็น Authorization: Bearer <secret> แล้วพูด JSON-RPC:

{ "jsonrpc": "2.0", "id": 1, "method": "minecraft:players" }

เมธอดครอบคลุมรายชื่อผู้เล่น สถานะเซิร์ฟเวอร์ allowlist และ ban list gamerules การตั้งค่า และคู่ save/stop แต่ละเมธอดคืนค่า JSON ที่มีโครงสร้างแทนที่จะเป็นข้อความบรรทัดหนึ่งที่คุณต้อง ใช้ regex

ผูกกับ localhost

ค่าเริ่มต้นคือ localhost และควรคงไว้อย่างนั้น ส่วนติดต่อนี้ ไม่ได้ ตั้งใจให้ หันสู่อินเทอร์เน็ต — ใครก็ตามที่เข้าถึงมันได้พร้อม secret สามารถหยุดเซิร์ฟเวอร์ของคุณได้ และ secret จะปลอดภัยเท่ากับ server.properties ของคุณเท่านั้น ถ้าต้องการเข้าถึงจากระยะไกล ให้เปิดผ่าน SSH tunnel หรือ reverse proxy ที่มีการยืนยันตัวตน ไม่ใช่โดย เปลี่ยน host เป็น 0.0.0.0

ทำไมมันสำคัญ

แดชบอร์ด บอท Discord และตัวตรวจสอบ uptime ในอดีตทำงานโดยอ่าน บันทึกคอนโซลหรือใช้ RCON ซึ่งทั้งสองอย่างเปราะบาง API ที่มีชนิดข้อมูลชัดเจนหมายความว่า วิดเจ็ตนับจำนวนผู้เล่นจะไม่พังเมื่อรูปแบบบรรทัดบันทึกเปลี่ยนไป

แปลงรูปภาพใด ๆ ให้เป็น server-icon.png ที่ถูกต้องและเรียกดูเมธอด JSON-RPC ได้ที่ Server Icon & API Tools

ไอคอนเซิร์ฟเวอร์และ API →

คู่มือเพิ่มเติม

ดูทั้งหมด →

How to make a Minecraft server: Java 25, the EULA and the whitelist

Setting up the official 26.3 Java server step by step: it needs Java 25, stops once for the EULA, and now ships with the whitelist switched on.

2026-09-23เซิร์ฟเวอร์และประสิทธิภาพ

Aikar's flags เปลี่ยนไปเมื่อฮีปเกิน 12 GB — มี 5 ตัวที่เปลี่ยน และ 1 ตัวลดลง

การคัดลอกชุดแฟล็กขนาด 4 GB ไปยังเซิร์ฟเวอร์ขนาด 16 GB จะทำให้ค่า 5 ตัวผิดพลาด นี่คือค่าทั้งห้าที่ผิดพลาด รวมถึงจำนวนผู้เล่นที่เซิร์ฟเวอร์แบบ Modded จะข้ามเส้นแบ่ง แต่เซิร์ฟเวอร์แบบ Vanilla จะไม่ข้าม

2026-08-01เซิร์ฟเวอร์และประสิทธิภาพ

ไวท์ลิสต์ แบน และ op: คำสั่งเซิร์ฟเวอร์ที่ทำงานต่างจากที่คุณคิด

การเปิดไวท์ลิสต์ไม่เตะผู้เล่นที่ออนไลน์อยู่แล้ว /ban ต้องมีเหตุผลถึงจะใช้งานได้จริง และระดับ op สำคัญกว่ารายชื่อ op รายละเอียดที่เจ้าของเซิร์ฟเวอร์ต้องระวัง

2026-07-22เซิร์ฟเวอร์และประสิทธิภาพ