ติดตั้ง PHP 5.5 บน CentOS 6

เนื่องด้วย PHP ที่ติดตั้งมากับ CentOS 6 นั้น มีแค่เวอร์ชั่น 5.3.3 หากต้องการใช้ PHP เวอร์ชั่นใหม่เช่น 5.5 หรือ 5.6 จำเป็นต้องติดตั้งจากแหล่งเว็บไซต์อื่นๆ

เว็บที่เป็นที่นิยมคือ webtatic.com ที่สร้าง (build) แพ็คเกจเวอร์ชั่นใหม่ๆ เช่น MySQL 5.5, PHP 5.4, PHP 5.5, PHP 5.6 เก็บไว้ใน Yum Repository

บทความนี้จะอธิบายการติดตั้ง PHP 5.5 จาก repo ของ webtatic.com
Continue reading “ติดตั้ง PHP 5.5 บน CentOS 6”

ติดตั้ง composer ไว้บริหารจัดการ PHP Library

composer เป็นเครื่องมือใช้ในการบริหารจัดการ ช่วยให้การติดตั้ง PHP Library ที่ต้องการได้ง่ายขึ้น เพราะ composer จะช่วยค้นหาและติดตั้ง Library อื่นๆ รวมทั้งเวอร์ชั่นที่จำเป็นโดยอัตโนมัติ ก่อนที่จะติดตั้่ง Library ที่ต้องการ

Continue reading “ติดตั้ง composer ไว้บริหารจัดการ PHP Library”

คอนฟิก Apache HTTP Authentication ให้ใส่ Username, Password ก่อนเข้าเว็บ

หากต้องการปกป้องเว็บไซต์ ให้เข้าได้เฉพาะคนที่มีสิทธิ์เท่านั้น  คือต้องใส่ Username, Password ให้ถูกต้องก่อน ถึงจะเข้าหน้าเว็บไซต์ได้

วิธีหนึ่งที่คอนฟิกง่ายที่สุดคือ ใช้ HTTP Authentication ซึ่งเป็นคุณสมบัติของตัวเว็บเซิร์ฟเวอร์เอง เช่น Apache  เพียงแค่แก้ไขคอนฟิกของเว็บเซิร์ฟเวอร์เท่านั้น ไม่จำเป็นต้องเขียนโปรแกรมเพิ่มเติมแต่อย่างใด

ลองมาดูวิธีคอนฟิกทำ HTTP Basic Authentication ซึ่งเป็นการทำ HTTP Authentication แบบง่ายสุดของ Apache ที่ติดตั้งบน CentOS 6 กัน

Continue reading “คอนฟิก Apache HTTP Authentication ให้ใส่ Username, Password ก่อนเข้าเว็บ”

yourls ย่อ url ให้สั้น ด้วยตัวคุณเอง

หากคุณเคยใช้ TinyURL ที่ย่อ url ยาวๆ ให้สั้นลง แล้วอยากทำใช้เองบ้าง บทความนี้จะแนะนำวิธีติดตั้งง่ายๆ ด้วย yourls

YOURLS หรือ Your Own URL Shortener เป็นโปรแกรมพัฒนาด้วย PHP โดยใช้ฐานข้อมูล MySQL ในการเก็บข้อมูลการเชื่อมโยง (map) ระหว่าง url แบบสั้นๆ กับ url ที่ดั้งเดิม แล้วยังเก็บข้อมูลการเรียกใช้ url แบบย่อ สามารถนำไปทำเป็นสถิติ แสดงผลเป็นกราฟได้ด้วย

Continue reading “yourls ย่อ url ให้สั้น ด้วยตัวคุณเอง”

PowerDNS เซิร์ฟเวอร์ DNS ที่สามารถบริหารจัดการผ่านเว็บ PHP, MySQL

เพื่อขีวิตที่ง่ายขึ้นในการดูแล DNS Server วันนี้ขอแนะนำ PowerDNS ที่สามารถทำหน้าที่รันเป็น DNS เซิร์ฟเวอร์ได้ อีกหนึ่งทางเลือกนอกจาก BIND

แทนที่จะเก็บข้อมูลโดเมน (domain) โซน (zone) เป็นเท็กซ์ไฟล์แบบใน BIND  เราสามารถคอนฟิก PowerDNS เลือกเก็บข้อมูลโดเมนไว้ในฐานข้อมูลได้ โดยรองรับทั้ง MySQL,  PostgreSQL, SQLite หรือแม้กระทั่ง LDAP

แล้วเราสามารถใช้โปรแกรม PowerAdmin บริหารจัดการข้อมูลของ PowerDNS ไม่ว่าจะเป็นการเพิ่ม แก้ไข ลบข้อมูล ผ่านหน้าเว็บได้โดยง่าย

ในที่นี้จะแสดงตัวอย่างการติดตั้ง PowerDNS หรือชื่อแพ็คเกจ rpm ว่า pdns บน CentOS 6 โดยจะติดตั้ง pdns จาก EPEL repo แล้วติดตั้งโปรแกรม PowerAdmin โดยดาวน์โหลดไฟล์ zip จากเว็บของ PowerAdmin

Continue reading “PowerDNS เซิร์ฟเวอร์ DNS ที่สามารถบริหารจัดการผ่านเว็บ PHP, MySQL”

ทดสอบเว็บเซิร์ฟเวอร์ด้วย ab (ApacheBench)

ดีฟอลต์คอนฟิกที่ได้จากการติดตั้งโปรแกรมจากไฟล์ rpm หรือ วิธีอื่นๆ นั้น สามารถนำมาใช้งานและทำงานได้ในระดับหนึ่ง

แต่ถ้าโปรแกรมเช่นเว็บเซิร์ฟเวอร์ ถ้าต้องให้บริการต่อผู้ใช้จำนวนมากขึ้น จำเป็นต้องปรับแต่งคอนฟิกเพิ่มเติม เพื่อให้ใช้ฮาร์ดแวร์ของเครื่องได้เต็มประสิทธิภาพ

ab เป็นโปรแกรมทดสอบเว็บเซิร์ฟเวอร์อย่างง่ายๆ โปรแกรมหนึ่งที่ติดตั้งมาพร้อมกับ Apache Web Server ถ้าเป็นไฟล์ rpm ก็อยู่ใน httpd-tools

เราสามารถนำ ab มาใช้ทดสอบเพื่อวัดผลได้ว่า เว็บเซิร์ฟเวอร์ที่กำลังแก้ไขคอนฟิกอยู่นั้น สามารถรองรับการใช้งานได้เท่าไร (requests per second) หากเราเปลี่ยนคอนฟิกไป ผลที่ได้จะเป็นอย่างไร

Continue reading “ทดสอบเว็บเซิร์ฟเวอร์ด้วย ab (ApacheBench)”

แก้ไขปัญหาการสตาร์ต Apache httpd Server ช้า

หากเวลารันเว็บเซิร์ฟเวอร์ apache เซอร์วิส httpd แล้วต้องรอนานกว่าจะสตาร์ตได้ หรือขึ้นข้อความ error แบบนี้

[root@cent6 ~]# service httpd start
Starting httpd: httpd: apr_sockaddr_info_get() failed for cent6.example.com
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
                                                           [  OK  ]
[root@cent6 ~]#

Continue reading “แก้ไขปัญหาการสตาร์ต Apache httpd Server ช้า”

แก้ปัญหา WordPress อัพโหลดไฟล์ไม่ได้

หลังจาก ติดตั้ง WordPress บน CentOS 6 เรียบร้อยแล้ว หากเจอปัญหาสามารถโพสต์ข้อความได้ แต่ไม่สามารถอัพโหลด (upload) ไฟล์ เช่นรูป ได้

ตัวอย่างข้อความ error เมื่อ upload file

“Picture-01.jpg” has failed to upload due to an error
Unable to create directory /var/www/html/wordpress/wp-content/uploads/2012/05. Is its parent directory writable by the server?

ในที่นี้จะแสดงวิธีการแก้ไขปัญหา

Continue reading “แก้ปัญหา WordPress อัพโหลดไฟล์ไม่ได้”

ติดตั้ง WordPress บน CentOS 6

WordPress โปรแกรมทำเว็บไซต์ blog ที่สามารถนำมาใช้งานได้ฟรี เป็นที่นิยมเป็นอย่างมาก เนื่องจากข้อดีหลายอย่างเช่นการติดตั้งและคอนฟิกง่าย มีโปรแกรมเสริม (plugin) เพื่อช่วยเพิ่มประสิทธิภาพของเว็บไซต์ และที่สำคัญหน้าเว็บที่แสดงบนเว็บไซต์จะถูกจัดเรียบเรียงเพื่อให้ search engine เช่น Google สามารถเข้ามาทำ index แล้วค้นหาเนื้อหา (keyword) ในเว็บเราได้สะดวก ซึ่งจะมีผลต่อลำดับในผลลัพธ์การค้นหา

WordPress พัฒนาด้วยภาษา PHP และใช้ MySQL เป็นฐานข้อมูล ติดตั้งได้ทั้งบน Linux, Unix, MAC OS และ Windows

ในที่นี้จะแสดงวิธีการติดตั้ง WordPress บน CentOS 6 ตั้งแต่การดาวน์โหลดไฟล์ การสร้างฐานข้อมูล คอนฟิกผ่านหน้าเว็บ จนสามารถล็อกอินเข้าสู่หน้า admin ของ WordPress ได้

Continue reading “ติดตั้ง WordPress บน CentOS 6”

ติดตั้งโมดูล PHP เพิ่มเติม บน CentOS 6

จากการ ติดตั้งโปรแกรมภาษาเว็บ PHP บน Apache

เว็บเซิร์ฟเวอร์ Apache และ PHP เครื่องนี้ สามารถเขียนเว็บเพจโดยใช้ภาษา PHP ได้แล้ว  แต่สามารถเรียกใช้ฟังก์ชั่นแค่พื้นฐานเท่านั้น  ถ้าต้องการใช้ฟังก์ชั่นอื่นๆ ด้วย เช่นเชื่อมต่อเข้ากับ MySQL เราจำเป็นต้องติดตั้งโมดูล PHP เพิ่มเติม

ในบทความนี้จะอธิบายวิธีการตรวจสอบและติดตั้งโมดูลเพิ่มเติมจากไฟล์ rpm ที่อยู่ในแผ่นดีวีดี CentOS 6.2  โดยจะเป็นการติดตั้งโมดูล MySQL เพื่อให้สามารถเขียน PHP เชื่อมเข้ากับฐานข้อมูล MySQL ได้

Continue reading “ติดตั้งโมดูล PHP เพิ่มเติม บน CentOS 6”