Piyanat Nimkhuntod
3 min readMar 23, 2021

เปลี่ยน port apache จาก 80 เป็น 8081 ใน ubuntu 20.4 ใน Google Cloud Platform (GCP)

เฮ้ยๆ นานๆ ทำทีก็มีลืมบ้าง น่าเขกหัวจริงๆ พอทำทีก็คลำที ไอ้การเปลี่ยน port เนี่ย ทำทีไรก็ google’ling มันใหม่ทุกที แล้วก็เสียเวลาทุกที วันนี้จึงต้องรีบเขียน blog เอาไว้เลย บางคนอาจจะมองว่าง่ายจะตายค้นแปปเดียวก็เจอ ใช่ครับเจอ ผมก็ทำตามนั้นแหละ แต่มันไม่ได้ไง ตลกเนอะ เอ้าเขียนคู่มือเองเลย

ก่อนอื่นนะครับ เราก็ทำการ Install apache2 กันก่อนเลย

sudo apt update
sudo apt install apache2

เมื่อ Install เสร็จ ตั้งค่าให้ apache2 ทำงานแบบ Service ด้วยคำสั่ง

sudo systemctl enable apache2

จากนั้นทำการ start service ดังกล่าวด้วยคำสั่ง

sudo systemctl start apache2

เมื่อเราเข้าตาม ip จริงแล้วเราก็จะได้หน้าตาเว็บประมาณนี้

แหมดูดี เหมือนจะดี แต่ๆๆๆๆ ถ้าเราไม่เอา port 80 ละ

่วง ถาม-ตอบ

Q: ก็แล้วทำไมไม่ใช ่port 80 ละ
A: ก็เพราะเราจะลอง nginx ยังไงละ เลยต้องกำหนดให้ port มันไม่ชน

Q: อ้าวแล้วทำไมไม่ กำหนด nginx port เป็น 8081 ละ
A: ต่อยกันไหม …ถามเยอะจัง… เอ้ย ก็เพราะจะใช้เว็บหลักด้วย nginx ยังไงละ เขาเคลมว่าดีกว่าก็ลองกันเสียหน่อย

เอาละเข้าเรื่องเลย เราต้องไปกำหนด ไฟล์ 2 ตัวคือ

/etc/apache2/sites-enabled/000-default.conf
/etc/apache2/ports.conf

ไฟล์ 000-default.conf

1. ตรง *:80 นั้นเปลี่ยนเป็น 8081
จากนั้นทำการบันทึก

ไฟล์ ports.conf

  1. ตรง Listen 80 นั้นเปลี่ยนเป็น 8081 แล้วกด บันทึก

สั่ง Restart Service Apache

sudo systemctl restart Apache2

ในเน็ตก็จะบอกคุณเท่านี้แหละ แต่ถ้าคุณทำบน Google Cloud Platform แล้วละก็มันไม่จบนะครับ เพราะเมื่อเรียกเว็บแล้วมันก็จะ Error เรียกไม่มา

ทางแก้คือ ต้องไปเพิ่ม Firewall เฉพาะ ซึ่งหากเรากำหนด Port ใหม่นอกเหนือจากที่มี Default มาให้ เราต้องมากำหนดใหม่ทุกครั้ง และใช้ได้กับ ทุก Instance ที่เราสร้าง แต่ตอนตั้งค่าต้องเลือก All instance in the network ตามรูปด้านล่าง

โดยไปเพิ่มที่เมนู VPC network → Firewall

จากนั้นให้เราเพิ่ม Rule โดยการคลิกที่ Create firewall rule

ให้เรากำหนดชื่อ โดยตั้งเป็นอะไรที่สื่อความหมายให้มันหน่อย เช่น allow http -8081

กำหนดให้เก็บ log เป็น On

เลือก Targets เป็น All instance in the network เพื่อให้ใช้ได้กับทุก Instance

เลือก Source IP Range เป็น 0.0.0.0/0 ก็คือไม่ Fix นั่นแหละ

tcp port กำหนดเป็น 8081

แล้วกด Create

เมื่อลองไป Refresh ดูก็จะพบว่าใช้งานได้ตามปกติ เย้

สุดท้ายนี้ไอ้วิธีของผมมันก็ไม่ใช่ว่าถูกต้องตามหลักการอะไร 100 Percent ไม่ได้ใช้ Docker หรือ อะไรที่คนเก่งๆเขาทำกัน แต่ก็พอได้แก้ปัญหาได้แบบลูกทุ่งๆครับ

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

No responses yet

Write a response