การเพิ่มเว็บไซต์ Node.js ผ่านรีเวิร์สพร็อกซี่ใน ServBay
ServBay เป็นสภาพแวดล้อมการพัฒนาเว็บบนเครื่องที่ครบวงจร รองรับเทคโนโลยีหลายประเภทโดยตรง รวมถึง Node.js ด้วย คู่มือนี้จะแนะนำแบบละเอียดว่าคุณจะนำแอปพลิเคชัน Node.js ที่รันแยกต่างหากของคุณมาเชื่อมต่อกับการจัดการเว็บไซต์บน ServBay ด้วยฟีเจอร์ รีเวิร์สพร็อกซี่ ได้อย่างไร ทำให้คุณสามารถเข้าถึงและจัดการโปรเจกต์ Node.js บนเครื่องคุณผ่านระบบชื่อโดเมนและใบรับรอง SSL ที่จัดการให้อย่างอัตโนมัติของ ServBay ได้สะดวกยิ่งขึ้น
ภาพรวม
แม้ ServBay จะสามารถรัน Node.js ได้โดยตรง (เช่น ติดตั้ง Node.js ผ่านแพคเกจของ ServBay แล้วรันสคริปต์) แต่การนำแอป Node.js ที่ฟังบนพอร์ตเฉพาะอยู่แล้วมาเพิ่มใน ServBay ในรูปแบบรีเวิร์สพร็อกซี่ เป็นการเชื่อมต่อที่พบได้บ่อยและยืดหยุ่น คุณจะได้ใช้ความสามารถของ ServBay เช่น การตั้งค่าชื่อโดเมน การจัดการ SSL/TLS เพื่อบริหารการเข้าถึงแอป Node.js คู่มือนี้จะนำคุณตั้งค่าทีละขั้นตอน
ข้อกำหนดเบื้องต้น
ก่อนเริ่ม โปรดตรวจสอบว่า:
- คุณได้ติดตั้ง ServBay บน macOS เรียบร้อยแล้ว
- โปรเจกต์ Node.js ของคุณทำงานอยู่บนเครื่อง ฟังอยู่ที่พอร์ตหนึ่ง (เช่น
8585
)
ขั้นตอนการดำเนินการ
ขั้นตอนที่ 1: รันโปรเจกต์ Node.js
เริ่มต้น ตรวจสอบว่าโปรเจกต์ Node.js ของคุณกำลังรันอยู่ที่พอร์ตที่ตั้งไว้ คุณสามารถใช้วิธีที่คุณถนัดในการสั่งรันแอป Node.js ได้เลย
สมมุติคุณกำลังรันเซิร์ฟเวอร์พัฒนา Vue.js ที่พอร์ต 8585
:
bash
$ npm run dev -- --port 8585
Server running at http://localhost:8585/
1
2
2
โปรดจดจำ IP Address (โดยทั่วไปคือ 127.0.0.1
) และพอร์ตที่แอปฟังอยู่
ขั้นตอนที่ 2: เปิดแผงจัดการ ServBay
ไปที่โฟลเดอร์แอปพลิเคชั่นใน macOS แล้วดับเบิลคลิกไอคอน ServBay
เพื่อเปิดโปรแกรม
ขั้นตอนที่ 3: ไปที่หน้าจัดการเว็บไซต์
หลังเปิด ServBay แล้ว คุณจะเห็นอินเทอร์เฟซหลัก ในเมนูนำทางด้านซ้าย เลือก เว็บไซต์ คุณจะเข้าสู่หน้าจัดการเว็บไซต์ ซึ่งในหน้านี้คุณจะสามารถบริหารเว็บไซต์ที่ ServBay ให้บริการหรือพร็อกซี่อยู่ทั้งหมด
ขั้นตอนที่ 4: เพิ่มเว็บไซต์ใหม่
ในหน้าจัดการเว็บไซต์ เลื่อนไปด้านล่างแล้วคลิกที่ปุ่ม +
จะมีฟอร์มให้กรอกข้อมูลเพื่อเพิ่มเว็บไซต์ใหม่
5: กำหนดค่าการตั้งค่าเว็บไซต์
ในฟอร์มเพิ่มเว็บไซต์ใหม่ คุณจำเป็นต้องกรอกข้อมูลสำคัญต่อไปนี้สำหรับการตั้งค่ารีเวิร์สพร็อกซี่:
- ชื่อ (Name): กำหนดชื่อที่จดจำง่าย เช่น
My Node.js App
ใช้สำหรับแสดงผลในอินเทอร์เฟซของ ServBay เท่านั้น - โดเมน (Domain): ใส่โดเมนที่ต้องการใช้เรียกดู Node.js ของคุณจากเบราว์เซอร์ แนะนำใช้งาน
.servbay.demo
เช่นnodejs.servbay.demo
ServBay จะจัดการ DNS ให้ชี้ไปยัง127.0.0.1
ให้อัตโนมัติ - โปรโตคอล (Protocol): เลือกโปรโตคอลที่เว็บไซต์รองรับ โดยปกติปล่อยไว้ที่
HTTP/HTTPS
ก็พอ ServBay จะฟังทั้งพอร์ต HTTP และ HTTPS ไปพร้อมกัน - วิธีขอใบรับรอง SSL (SSL Certificate Method): สำหรับการพัฒนาบนเครื่อง แนะนำเลือก
ServBay CA
ServBay จะสร้างและติดตั้งใบรับรอง SSL ที่ลงนามโดย root certificate ของตัวเองโดยอัตโนมัติ เมื่อติดตั้ง root certificate ของ ServBay ลงบนระบบและเบราว์เซอร์แล้ว จะไม่มีแจ้งเตือนใบรับรองอีก คุณสามารถเลือกServBay Public CA
หรือACME
(สำหรับขอใบรับรองที่ได้รับความเชื่อถือจากภายนอก) ตามกรณีการใช้งานที่ต้องการให้เข้าถึงจากนอกเครือข่าย - ประเภทเว็บไซต์ (Site Type): ต้องเลือก
รีเวิร์สพร็อกซี่ (Reverse Proxy)
เพื่อสั่งให้ ServBay ส่งต่อ request ทั้งหมดไปยังจุดหมายอื่นแทนที่จะให้บริการไฟล์ตรงจากระบบไฟล์ - IP Address: กรอก IP ของ Node.js ที่ทำงานอยู่ โดยปกติคือ
127.0.0.1
สำหรับที่รันบนเครื่องเดียวกัน - พอร์ต (Port): ใส่พอร์ตที่ Node.js ฟังอยู่ เช่น
8585
ServBay จะรับ request แล้วส่งต่อไปยัง127.0.0.1:8585
ขั้นตอนที่ 6: บันทึกและเสร็จสิ้น
เมื่อกรอกข้อมูลครบแล้ว ให้คลิกปุ่ม เพิ่ม (Add)
ด้านล่างฟอร์ม ServBay จะบันทึกข้อมูลที่ตั้งค่าและอัปเดตการตั้งค่าภายในอัตโนมัติ (เช่น การตั้งค่าเว็บเซิร์ฟเวอร์และ DNS)
หลังบันทึกสำเร็จ คุณจะเห็นรายการ nodejs.servbay.demo
ในตารางรายชื่อเว็บไซต์ของ ServBay โดยตอนนี้คุณสามารถเข้าสู่ Node.js ที่เพิ่มไว้นี้ในเบราว์เซอร์ได้ทันที ด้วยโดเมนที่ตั้งไว้ เช่น http://nodejs.servbay.demo
หรือ https://nodejs.servbay.demo
คุณสามารถคลิกที่ไอคอนเบราว์เซอร์ข้างรายการนี้เพื่อเข้าสู่เว็บไซต์ได้อย่างรวดเร็ว
ขั้นตอนที่ 7: ฟีเจอร์การใช้งานด่วน
ServBay เตรียมปุ่มลัดสำหรับแต่ละเว็บไซต์ไว้ทางด้านขวาของตาราง เช่น:
- เปิดโฟลเดอร์เว็บไซต์ด้วย IDE: สำหรับเว็บไซต์แบบรีเวิร์สพร็อกซี่ ปุ่มนี้อาจนำคุณไปที่โฟลเดอร์รากเริ่มต้นของ ServBay เช่น
/Applications/ServBay/www
หรือโฟลเดอร์ที่ตั้งค่าไว้ - เปิดเว็บไซต์ในเบราว์เซอร์: คลิกรวดเร็วเพื่อเข้าเว็บไซต์ในเบราว์เซอร์ที่ตั้งเป็นค่าเริ่มต้น
- ดูล็อกเว็บไซต์: ตรวจสอบล็อกการเข้าถึงและข้อผิดพลาดที่เว็บเซิร์ฟเวอร์ (เช่น Caddy หรือ Nginx) ของ ServBay จัดให้ ฟีเจอร์นี้มีประโยชน์สำหรับการดีบัก
- หยุด/เปิดใช้งานเว็บไซต์: กดเพื่อระงับชั่วคราวหรือเปิดการเข้าถึงเว็บไซต์ตามต้องการ
- ลบเว็บไซต์: ลบการตั้งค่าเว็บไซต์นี้ออกจาก ServBay
คำถามที่พบบ่อย (FAQ)
- เข้าโดเมนแล้วเจอหน้าหลัก ServBay หรือ Error?
- ตรวจสอบให้แน่ใจว่า Node.js ของคุณรันอยู่ที่ IP และพอร์ตที่ถูกต้อง
- ตรวจสอบการตั้งค่า IP และพอร์ตใน ServBay ว่าสอดคล้องกับการตั้งค่าของ Node.js ที่ฟังอยู่
- ตรวจสอบว่า ServBay ทำงานอยู่หรือไม่
- หากใช้โดเมน
.servbay.demo
ตรวจสอบว่าบริการ DNS ของ ServBay ทำงานอยู่ และระบบเครือข่ายอนุญาตให้ ServBay จัดการการแก้ไขชื่อโดเมนได้
- เข้า HTTPS แล้วมีคำเตือนเรื่องใบรับรอง?
- หากคุณเลือกใช้
ServBay CA
ตรวจสอบว่าคุณได้ติดตั้งและให้ความเชื่อถือ root certificate ของ ServBay ในระบบและเบราว์เซอร์แล้ว (ServBay มีตัวเลือกติดตั้งให้อย่างสะดวก) - หากใช้
ServBay Public CA
หรือACME
ให้ตรวจสอบว่าใบรับรองถูกติดตั้งและออกให้ถูกต้องครบถ้วน
- หากคุณเลือกใช้
สรุป
ด้วยฟีเจอร์รีเวิร์สพร็อกซี่ ServBay ช่วยให้คุณเชื่อมต่อและบริหารโปรเจกต์ Node.js ที่ทำงานอยู่บนเครื่องได้ยืดหยุ่นและสะดวกขึ้น คุณสามารถใช้ฟีเจอร์ของ ServBay เช่น โดเมนเฉพาะและจัดการใบรับรอง SSL อัตโนมัติ เพื่อสร้างจุดเข้าใช้และจัดการโปรเจกต์ Node.js ได้อย่างเป็นระบบ ทำตามขั้นตอนในบทความนี้ คุณจะตั้งค่าและเข้าถึงเว็บไซต์ Node.js ของคุณในสภาพแวดล้อม ServBay ได้อย่างง่ายดาย