แกะกล่องทดสอบ AirLive WL-5460AP v2 Wireless Access Point

วันก่อนเดินตลาดเพื่อหาซื้อ Access Point รุ่นประจำที่เคยใช้ แต่ของขาดตลาด ผู้ขายเลยแนะนำรุ่นนี้มาให้ ว่ากันว่าสามารถปรับสัญญาณ Wireless ได้แรงมาก

เลยต้องมาทดสอบกันหน่อย ในที่นี้จะทดสอบคอนฟิกเบื้องต้น

Continue reading “แกะกล่องทดสอบ AirLive WL-5460AP v2 Wireless Access Point”

เขียนโปรแกรมโหลดเว็บเพจด้วย PHP cURL

จากที่ได้นำเสนอ วิธีการใช้ cURL เพื่อโหลดเว็บเพจ ซึ่งเป็นการรันคำสั่งแบบ command line มาแล้ว

คราวนี้จะเป็นการเขียนโปรแกรม PHP โดยเรียกใช้ฟังก์ชั่นในโมดูล curl เพื่อโหลดเว็บเพจ

Continue reading “เขียนโปรแกรมโหลดเว็บเพจด้วย PHP cURL”

วิธีการใช้ cURL เพื่อโหลดเว็บเพจ

จากที่เคยแนะนำ วิธีการใช้คำสั่ง wget รันเป็นคำสั่งบน comand line เพื่อโหลดเว็บเพจได้ มาครั้งนี้ ขอแนะนำอีกคำสั่งคือ cURL โปรแกรมทำหน้าที่คล้ายกันแต่มีคุณสมบัติมากกว่า แถม curl ยังมี library (libcurl) ที่ภาษาต่างๆ เช่น PHP นำไปพัฒนาสร้างเป็นฟังก์ชั่นให้เรียกใช้ในการเขียนโปรแกรมได้

Continue reading “วิธีการใช้ cURL เพื่อโหลดเว็บเพจ”

คอนฟิก Asterisk เพื่อรองรับ SIP Client

หลังจาก ติดตั้ง Asterisk 1.8 บน CentOS 5  เสร็จเรียบร้อยแล้ว ในช่วงเริ่มต้นการทดสอบ ก่อนที่จะเชื่อมต่อเข้ากับ PSTN หรือระบบโทรศัพท์จริง เพื่อไม่ต้องเสียค่าใช้จ่ายในการโทรเข้า-ออก แนะนำให้ทดสอบ และทำความเข้าใจ ด้วย SIP  Client โดยอาจจะใช้ที่เป็น Hardware หรือเป็น Software โปรแกรมติดตั้งบนเครื่อง

Continue reading “คอนฟิก Asterisk เพื่อรองรับ SIP Client”

ติดตั้ง Asterisk 1.8 บน CentOS 5

Asterisk ถือว่าเป็นโปรแกรมสำหรับทำเป็น VoIP Server ได้ดีโปรแกรมหนึ่ง ด้วยคุณสมบัติที่มากมาย แล้วที่สำคัญยังใช้งานได้ฟรี

การติดตั้ง Asterisk เพื่อทำเป็นเซิร์ฟเวอร์สามารถทำได้สองวิธีหลักๆ คือ

  • ดาวน์โหลดไฟล์ ISO ชื่อ AsteriskNOW ที่ทางทีม Asterisk ได้จัดเตรียมโปรแกรมที่จำเป็นทั้งหมดแล้วสร้างเป็นไฟล์ ISO เพื่อให้ผู้ใช้ดาวน์โหลดไปเขียนใส่แผ่นซีดี เพื่อให้สะดวกต่อการติดตั้งและแทบจะพร้อมใช้งานได้เลย (based on CentOS 5)
  • ดาวน์โหลดไฟล์ Asterisk Communications Engine แล้วนำมาติดตั้งเอง โดยอาจจะใช้ yum หรือติดตั้งเองด้วยไฟล์ rpm

ในบทความนี้จะอธิบายวิธีการติดตั้งแบบหลัง โดยดาวน์โหลดไฟล์ rpm แล้วนำมาติดตั้งเองบน CentOS 5

Continue reading “ติดตั้ง Asterisk 1.8 บน CentOS 5”

เก็บข้อมูลการใช้เว็บผ่าน Linux Router ด้วย Squid Transparent Proxy

ด้วยกฎหมาย พรบ. ที่เริ่มมีผลบังคับ ให้เก็บข้อมูลการใช้เว็บอินเตอร์เน็ต ว่าเป็นใครใช้ เข้าเว็บไหน เมื่อไร

ถ้าเป็นเครื่องที่เราสามารถดูแลได้ วิธีหนึ่งที่ทำได้คือ คอนฟิก Proxy ใน ฺBrowser ของแต่ละเครื่องที่จะใช้อินเตอร์เน็ต ชี้ไปยัง Proxy Server ที่ทำหน้าที่เก็บข้อมูลการใช้งาน

แต่ถ้าเราไม่สามารถควบคุมดูแลได้ หรือเครื่องที่ใช้งานมีการเปลี่ยนแปลงตลอดเวลา เช่นให้บริการอินเตอร์เน็ต สำหรับผู้มาติดต่องาน

ถ้าเป็นแบบนี้ แนะนำให้คอนฟิก Transparent Proxy บน Linux Router เพื่อให้ทำหน้าที่เก็บข้อมูลการใช้เว็บโดยอัตโนมัติ

Continue reading “เก็บข้อมูลการใช้เว็บผ่าน Linux Router ด้วย Squid Transparent Proxy”

ตัดบางส่วนจากข้อความภาษาไทยด้วย PHP Multibyte String

โปรแกรมประเภทเว็บบอร์ดหรือเว็บ Social ที่ต้องการตัดบางส่วนจากข้อความหรือบทความที่ยาว เพื่อเป็นตัวอย่าง แสดงในหน้าแรก หรือการ Share หัวข้อบทความเป็นตัวอย่าง จากเว็บไซต์อื่นๆ

หากเป็นภาษาอังกฤษ สามารถทำได้อย่างง่าย แต่ปัญหาคือเวลาตัดคำภาษาไทย มักจะไม่ได้ตามที่ต้องการ และอาจมีอักษรประหลาดแสดงขึ้นมาด้วย

ในบทความนี้จะแสดงการใช้ฟังก์ชั่น PHP Multibyte String เพื่อตัดบางส่วนของข้อความได้ตามต้องการได้

Continue reading “ตัดบางส่วนจากข้อความภาษาไทยด้วย PHP Multibyte String”

เขียนโปรแกรมด้วย PHP DOM เพื่อดึงข้อมูลจากไฟล์ HTML

ได้รับข้อมูลในรูปแบบไฟล์ HTML เพื่อให้ดึงค่าจากบางฟิลด์ (field) ออกมา ใช้ในการทำรายงาน

ในตอนแรกลองเขียนโปรแกรม PHP ขึ้นมาเอง โดยใช้ Regular Expression ทำไปซักพัก เริ่มยากขึ้น เหตุเพราะรูปแบบอันหลากหลายของไฟล์ HTML ไม่ว่าจะเป็นตัวอักษรพิมพ์ใหญ่เล็ก การเรียงลำดับ tag การเว้นวรรค

พบวิธีการดึงข้อมูลโดยใช้ PHP DOM ง่ายขึ้นเยอะ เลยนำมาแชร์เล่าสู่กันฟัง

Continue reading “เขียนโปรแกรมด้วย PHP DOM เพื่อดึงข้อมูลจากไฟล์ HTML”

ปรับหน้าเว็บเพจให้พอดีหน้าจอ iPhone

อยู่ในช่วงปรับเว็บเพจที่พัฒนาใช้งานบน PC ให้สามารถรันบน browser ใน มือถือได้ด้วย เลยต้องปรับแต่งหน้าจอเพื่อให้ผู้ใช้งานได้สะดวก

ในที่นี้ขอแชร์วิธีการเพิ่มขนาดเว็บเพจ เพื่อให้พอดีกับหน้าจอ Safari บน iPhone ด้วยการใช้ “viewport”

Continue reading “ปรับหน้าเว็บเพจให้พอดีหน้าจอ iPhone”

เก็บสำรองคอนฟิกของลีนุกซ์

เพื่อป้องกันกรณีเครื่องเซิร์ฟเวอร์อาจเกิดความเสียหายไม่ว่าจะเกิดจากเหตุอะไร แนะนำให้เก็บสำรองคอนฟิกไว้

ไฟล์คอนฟิกของลีนุกซ์เกือบทั้งหมด จะอยู่ในไดเร็คทอรี /etc ส่วนใหญ่จะเป็น text file มีขนาดเล็กๆ ดังนั้นแนะนำให้เก็บทุกไฟล์ที่อยู่ในนี้

วิธีการเก็บสำรองไฟล์แบบง่ายที่สุดน่าจะเป็นการใช้คำสั่ง tar

ตัวอย่างการเก็บไฟล์ทั้งหมดที่อยู่ใน /etc

[root@server ~]# cd /
[root@server /]# tar zcvpf server-backup-etc-20111031.tar.gz etc/
etc/
etc/sysctl.conf
etc/inittab
etc/idmapd.conf
etc/pki/
etc/pki/nssdb/
...

คำแนะนำ

  •  tar บนลีนุกซ์ สามารถระบุออปชั่น z เพื่อบีบขนาดของไฟล์ได้เลย
  • การระบุไดเร็คทอรีเวลาใช้คำสั่ง tar ให้เอาเครื่องหมาย / ที่อยู่หน้าไดเร็คทอรีออก มิฉะนั้นเวลาไปแตกไฟล์ (untar) ออก อาจพลาดไปเขียนไฟล์ทับ /etc ของเครื่องปลายทางได้

ตัวอย่างไฟล์ tar ที่ได้

[root@server /]# ls -l server-backup-etc-20111031.tar.gz
-rw-r--r-- 1 root root 5332341 Oct 31 20:52 server-backup-etc-20111031.tar.gz

ก็ขึ้นอยู่กับแต่ละคนว่าจะเก็บไฟล์ tar นี้ไว้ที่ไหน เช่นเก็บใส่ USB Drive หรือ ส่งไฟล์ (transfer file) ไปเครื่องที่อยู่ที่อื่น

ส่วนไฟล์คอนฟิกอื่นๆ ต้องขึ้นอยู่กับโปรแกรมที่ติดตั้ง บางโปรแกรมอาจติดตั้งอยู่ใน /opt หรือ /usr/local ต้องลองหาดู

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

โดยส่วนตัวแล้ว นอกจากเก็บไฟล์ที่อยู่ใน /etc แล้ว จะรันคำสั่งดังต่อไปนี้เพื่อเก็บสถานะของเครื่อง ณ ขนะนั้นจริงๆ ว่ารันอะไรอยู่บ้าง เพื่อจะได้ใช้เปรียบเทียบหลังจากที่ reboot เครื่องใหม่

  • uname -a
  • hostname
  • ps -ef
  • free
  • netstat -an
  • netstat -rn
  • ifconfig -a
  • mii-tool
  • iptables -L -v -n
  • sestatus
  • lsmod
  • dmesg
  • mount
  • df -k
  • pvdisplay
  • vgdisplay
  • lvdisplay
  • cat /proc/mdstat

ลองนำไปใช้กันดูครับ หวังว่าเซิร์ฟเวอร์ของทุกท่านจะปลอดภัย