การแยก domain แล้ว reverse proxy ไปตาม port ที่ต้องการโดยใช้ Apache

| Apache | 1353 | 1164 วันที่แล้ว
ในบทความนี้ผมจะทำการแยก domain แล้วทำการ reverse proxy ไปตามพอร์ตต่าง ๆ ที่ต้องการ

สมมติ ในที่นี้ผมมี domain อยู่ 2 โดเมน คือ doesystem.info กับ doesystem.com
โดย doesystem.info ผมจะให้มัน reverse ไปที่ port 3000
ส่วน doesystem.com ผมจะให้มัน reverse ไปที่ port 3001

ในที่นี้ผมจะใช้ตัว Apache ทำให้มันเป็น Virtual Host แล้วทำการ reverse ไปตามพอร์ตที่ต้องการ

ก่อนอื่นผมก็ไปเปิดใช้ Virtual hosts โดยเข้าไปที่ conf/httpd.conf จากนั้นมองหา

# Virtual hosts
Include conf/extra/httpd-vhosts.conf
แล้วทำการเอาคอมเม้นออก เพื่อทำการ include ไฟล์ httpd-vhosts.conf เข้ามาใช้ด้วยใน Project จากนั้นเราก็ไปทำการ config virtual host ในไฟล์ที่ชื่อว่า httpd-vhosts.conf เมื่อเข้าไปแล้ว ผมก็เพิ่ม
<virtualhost>
    ServerAdmin [email protected]
    ServerName www.doesystem.info
    ProxyPreserveHost On
 
    # setup the proxy
    <proxy>
        Order allow,deny
        Allow from all
    </proxy>
 
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
</virtualhost>
 
<virtualhost>
    ServerAdmin [email protected]
    ServerName www.doesystem.com
    ProxyPreserveHost On
 
    # setup the proxy
    <proxy>
        Order allow,deny
        Allow from all
    </proxy>
 
    ProxyPass / http://localhost:3001/
    ProxyPassReverse / http://localhost:3001/
</virtualhost>
เพียงแคนี้เวลาเข้ามาจากโดเมน doesystem.info มันก็จะ reverse ไปที่ http://localhost:3000 ส่วนเวลาเข้าจาก doesystem.con มันก็จะ reverse ไปที่ http://localhost:3001
comments

[1]
AGI
60 D
[1]
Adobe-PDF
1164 D
[1]
Android
1056 D
[2]
Angular
39 D
[40]
Animal
1149 D
[1]
Apache
1164 D
[1]
[4]
[2]
[1]
[10]
CMS-Joomla
1165 D
[2]
CMS-SMF
1165 D
[1]
[4]
[1]
[3]
[1]
Database
1164 D
[4]
[1]
DeAI
25 D
[1]
DeData
25 D
[1]
DeFi
25 D
[2]
Docker
55 D
[2]
[1]
Forex
22 D
[1]
Fruit
1149 D
[1]
General
46 D
[2]
Git
951 D
[6]
HTML
55 D
[1]
Health
50 D
[1]
Housework
1153 D
[2]
IT
1145 D
[2]
Imacro
1165 D
[20]
Java
27 D
[1]
Java-Web
1056 D
[2]
[2]
MQL5
977 D
[3]
MakeMoney
951 D
[18]
[1]
[1]
Maven
950 D
[5]
[1]
Mobile
1162 D
[2]
NGINX
39 D
[2]
NodeJs
55 D
[1]
Oracle
55 D
[3]
Physics
946 D
[4]
PugJS
951 D
[2]
React
961 D
[132]
Science
1147 D
[2]
[5]
Spring
39 D
[12]
[7]
[2]
[1]
[4]
Ubuntu
1115 D
[1]
WebLogic
1146 D
[4]