โค้ดดิ้ง
		
	
	
สร้าง backend server บนเครื่อง Windows และใช้งานในวง LAN ได้
 
						หากต้องการสร้างหลายๆ เว็บไซต์และต้องการแยกแต่ละเว็บไซต์ให้อยู่ในโฟลเดอร์ที่ชัดเจน สามารถทำได้โดยการสร้างโฟลเดอร์แยกแต่ละโปรเจกต์ หรือแต่ละเว็บไซต์ออกจากกัน วิธีนี้จะทำให้คุณสามารถจัดการเว็บแต่ละอันได้ง่ายขึ้น
การจัดโครงสร้างโฟลเดอร์สำหรับหลายๆ เว็บไซต์:
สมมติว่าคุณต้องการมี 3 เว็บไซต์ ชื่อ website1, website2, และ website3 คุณสามารถสร้างโครงสร้างโฟลเดอร์แบบนี้ได้:
C:\
 ├── websites\
 │    ├── website1\
 │    │     ├── server.js
 │    │     ├── public\
 │    │     └── (อื่นๆ)
 │    ├── website2\
 │    │     ├── server.js
 │    │     ├── public\
 │    │     └── (อื่นๆ)
 │    └── website3\
 │          ├── server.js
 │          ├── public\
 │          └── (อื่นๆ)ขั้นตอนการสร้างโฟลเดอร์และโปรเจกต์:
1. สร้างโฟลเดอร์โปรเจกต์สำหรับแต่ละเว็บไซต์:
- เปิด Command Prompt หรือ PowerShell แล้วใช้คำสั่งดังนี้:
mkdir C:\websites\website1
mkdir C:\websites\website2
mkdir C:\websites\website32. สร้างโปรเจกต์สำหรับแต่ละเว็บไซต์ด้วย Express.js:
- เข้าไปในแต่ละโฟลเดอร์ของเว็บไซต์แล้วสร้างโปรเจกต์ Express.js
cd C:\websites\website1
npm init -y
npm install express
ทำเหมือนกันสำหรับ website2 และ website3
3. แก้ไขไฟล์ server.js สำหรับแต่ละเว็บไซต์:
- เข้าไปในแต่ละโฟลเดอร์ แล้วสร้างไฟล์ server.jsขึ้นมา ตัวอย่างโค้ดสำหรับwebsite1:
const express = require('express');
const app = express();
const path = require('path');
const port = 3001;  // ใช้ port ที่ต่างกัน เช่น 3001 สำหรับ website1
app.use(express.static(path.join(__dirname, 'public')));
app.get('/', (req, res) => {
    res.sendFile(path.join(__dirname, 'public', 'index.html'));
});
app.listen(port, '0.0.0.0', () => {
    console.log(`Website 1 is running on http://localhost:${port}`);
});
ทำการสร้างไฟล์ server.js แบบนี้ใน website2 และ website3 ด้วย แต่ให้เปลี่ยน port ของแต่ละเว็บไซต์ เช่น website2 ใช้ port 3002 และ website3 ใช้ port 3003
4. เพิ่มหน้าเว็บด้วย React.js (หรือ Frontend อื่นๆ):
- สร้างโปรเจกต์ React สำหรับแต่ละเว็บไซต์ แล้ว build เสร็จให้เอาไฟล์จากโฟลเดอร์ buildไปใส่ในโฟลเดอร์publicของแต่ละเว็บไซต์
cd C:\websites\website1
npx create-react-app my-app
cd my-app
npm run build
เอาไฟล์จาก my-app/build (หรือ my-app/dist) ไปไว้ใน C:\websites\website1\public 
5. รันหลายเว็บไซต์พร้อมกัน:
- รันเว็บไซต์แต่ละอันโดยการเปิด Command Prompt หรือ PowerShell หลายหน้าต่าง แล้วเข้าไปในแต่ละโฟลเดอร์ แล้วรันคำสั่ง:
node server.js
เมื่อรันแล้ว คุณจะสามารถเข้าถึงเว็บไซต์ได้ดังนี้:
- website1:- http://<Your_IP>:3001
- website2:- http://<Your_IP>:3002
- website3:- http://<Your_IP>:3003
สรุป:
- สร้างโฟลเดอร์แยกสำหรับแต่ละเว็บไซต์ เช่น website1,website2, และwebsite3
- สร้างโปรเจกต์ Express.js สำหรับแต่ละเว็บไซต์ และตั้งค่า port ต่างกัน
- เพิ่มหน้าเว็บที่สร้างจาก React หรือ Frontend อื่น ๆ ในแต่ละโฟลเดอร์
- รันเว็บไซต์แต่ละอันพร้อมกัน โดยใช้ Command Prompt หลายหน้าต่าง
วิธีนี้จะช่วยให้คุณสามารถจัดการเว็บไซต์หลายเว็บได้ง่าย และใช้งานพร้อมกันในวง LAN ได้
 
				 
					 
					



