WordPress โปรแกรมทำเว็บไซต์ blog ที่สามารถนำมาใช้งานได้ฟรี เป็นที่นิยมเป็นอย่างมาก เนื่องจากข้อดีหลายอย่างเช่นการติดตั้งและคอนฟิกง่าย มีโปรแกรมเสริม (plugin) เพื่อช่วยเพิ่มประสิทธิภาพของเว็บไซต์ และที่สำคัญหน้าเว็บที่แสดงบนเว็บไซต์จะถูกจัดเรียบเรียงเพื่อให้ search engine เช่น Google สามารถเข้ามาทำ index แล้วค้นหาเนื้อหา (keyword) ในเว็บเราได้สะดวก ซึ่งจะมีผลต่อลำดับในผลลัพธ์การค้นหา
WordPress พัฒนาด้วยภาษา PHP และใช้ MySQL เป็นฐานข้อมูล ติดตั้งได้ทั้งบน Linux, Unix, MAC OS และ Windows
ในที่นี้จะแสดงวิธีการติดตั้ง WordPress บน CentOS 6 ตั้งแต่การดาวน์โหลดไฟล์ การสร้างฐานข้อมูล คอนฟิกผ่านหน้าเว็บ จนสามารถล็อกอินเข้าสู่หน้า admin ของ WordPress ได้
เครื่องที่ทดสอบ
- ติดตั้ง CentOS 6.2 แบบ “Minimal – Base System – Base” (ติดตั้ง CentOS 6.2 : เลือกชุดซอฟต์แวร์ที่จะลง)
- IP Address ของเซิร์ฟเวอร์ 192.168.5.62
- ติดตั้งเว็บเซิร์ฟเวอร์ Apache
- ติดตั้งฐานข้อมูล MySQL
- ติดตั้งโมดูล PHP เพิ่มเติม บน CentOS 6
สรุปไฟล์ rpm จากแผ่นดีวีดีที่ต้องติดตั้งเพิ่ม หลังจากลง CentOS 6.2 แบบ Minimal +Base
- apr-1.3.9-3.el6_1.2.x86_64.rpm
- apr-util-1.3.9-3.el6_0.1.x86_64.rpm
- apr-util-ldap-1.3.9-3.el6_0.1.x86_64.rpm
- mailcap-2.1.31-2.el6.noarch.rpm
- httpd-tools-2.2.15-15.el6.centos.x86_64.rpm
- httpd-2.2.15-15.el6.centos.x86_64.rpm
- mysql-5.1.52-1.el6_0.1.x86_64.rpm
- perl-DBI-1.609-4.el6.x86_64.rpm
- perl-DBD-MySQL-4.013-3.el6.x86_64.rpm
- mysql-server-5.1.52-1.el6_0.1.x86_64.rpm
- php-5.3.3-3.el6_1.3.x86_64.rpm
- php-cli-5.3.3-3.el6_1.3.x86_64.rpm
- php-common-5.3.3-3.el6_1.3.x86_64.rpm
- php-pdo-5.3.3-3.el6_1.3.x86_64.rpm
- php-mysql-5.3.3-3.el6_1.3.x86_64.rpm
ดาวน์โหลดโปรแกรม WordPress
เข้าเว็บไซต์ wordpress.org เพื่อดาวน์โหลดโปรแกรม wordpress
คลิ้กที่เมนู Download หรือคลิ้กปุ่ม Download WordPress เพื่อเข้าสู่หน้าดาวน์โหลด
ล่าสุด ณ ตอนที่เขียนเป็นเวอร์ชั่น WordPress 3.3.2
ในหน้าดาวน์โหลด แนะนำให้คลิ้กที่ลิ้งค์ Download .tar.gz เพราะจะมีขนาดไฟล์เล็กกว่า .zip และใช้ติดตั้งได้เหมือนกัน
ใช้โปรแกรมประเภท scp เพื่อถ่ายโอนไฟล์ไปยังเครื่องลีนุกซ์ที่จะติดตั้ง
หรือถ้าจะดาวน์โหลดบนคำสั่งลีนุกซ์เลย ก็สามารถทำได้โดยใช้โปรแกรม curl หรือ wget
ตัวอย่างเช่นใช้คำสั่ง curl เพื่อดาวน์โหลดโปรแกรม wordpress
[root@cent6 ~]# curl -o wordpress-3.3.2.tar.gz 'http://wordpress.org/latest.tar.gz' % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 3792k 0 3792k 0 0 53721 0 --:--:-- 0:01:12 --:--:-- 59257
ออปชั่น ‘-o‘ ระบุชื่อไฟล์ที่ต้องการเซฟ ส่วน http://wordpress.org/latest.tar.gz เป็น URL ที่ทาง wordpress สร้างไว้สำหรับให้ดาวน์โหลดโปรแกรมที่เป็นเวอร์ชั่นล่าสุด
ไฟล์ที่ได้
[root@cent6 ~]# ls -l wordpress-3.3.2.tar.gz -rw-r--r--. 1 root root 3883667 May 12 13:20 wordpress-3.3.2.tar.gz
ติดตั้งไฟล์ wordpress
ใช้คำสั่ง tar แตก (extract) ไฟล์ที่ดาวน์โหลดมาในไดเร็คทอรี /var/www/html/
[root@cent6 ~]# cd /var/www/html/ [root@cent6 html]# tar zxvf /root/wordpress-3.3.2.tar.gz wordpress/ wordpress/license.txt wordpress/wp-activate.php wordpress/wp-pass.php wordpress/wp-login.php wordpress/readme.html ... wordpress/wp-mail.php wordpress/wp-config-sample.php wordpress/wp-links-opml.php wordpress/wp-comments-post.php wordpress/wp-app.php [root@cent6 html]#
หลังการใช้คำสั่ง tar เพื่อแตกไฟล์ที่ดาวน์โหลดมา ทุกครั้งแนะนำให้แก้ไข owner และ group ของไฟล์ เพื่อป้องกัน owner หรือ group ไปตรงกับผู้ใช้ (user) ที่อยู่บนเครื่อง
[root@cent6 html]# ls -l wordpress/ total 204 -rw-r--r--. 1 33 tape 397 May 26 2008 index.php -rw-r--r--. 1 33 tape 16899 Jun 9 2011 license.txt -rw-r--r--. 1 33 tape 9202 Apr 20 19:44 readme.html -rw-r--r--. 1 33 tape 4268 Oct 20 2011 wp-activate.php ...
ใช้คำสั่ง chown เพื่อแก้ไข owner และ group ให้เป็น root ทั้งหมด
หมายเหตุ หรือถ้าต้องการเพิ่มความปลอดภัยของระบบอีกขั้น แนะนำให้สร้าง user เพื่อเป็นเจ้าของไฟล์ที่ติดตั้งนี้อีกที แต่ในที่นี้ขอใช้ root เพื่อความง่ายต่อการนำเสนอ
ใช้คำสั่ง chown ออปชั่น ‘-R’ เพื่อเปลี่ยน owner และ group ของทุกไฟล์ภายใต้ไดเร็คทอรีที่ระบุ
[root@cent6 html]# chown -R root.root wordpress/ [root@cent6 html]# ls -l wordpress/ total 204 -rw-r--r--. 1 root root 397 May 26 2008 index.php -rw-r--r--. 1 root root 16899 Jun 9 2011 license.txt -rw-r--r--. 1 root root 9202 Apr 20 19:44 readme.html -rw-r--r--. 1 root root 4268 Oct 20 2011 wp-activate.php ...
คอนฟิก wordpress ผ่านเว็บ
ใช้ browser เข้าไปที่ http://192.168.5.62/wordpress/ เพื่อเริ่มคอนฟิก wordpress ผ่านเว็บ
หน้าแรกที่เจอ แสดงข้อความ “There doesn’t seem to be a wp-config.php file” คือไม่สามารถหาไฟล์ wp-config.php ซึ่งเป็นไฟล์คอนฟิกหลักของ wordpress
กดปุ่ม [Create a Configuration File] เพื่อเริ่มสร้างคอนฟิกไฟล์ wp-config.php
หน้าถัดมา แสดงข้อมูลคำอธิบายเกี่ยวกับฐานข้อมูล (database) ที่ wordpress ต้องใช้
ก่อนจะกดปุ่ม [Let’s go!] เพื่อไปหน้าต่อไป ต้องสร้าง database และ GRANT สิทธิ ให้ wordpress ใช้เชื่อมต่อได้ก่อน
รันคำสั่ง mysql (หรือ phpmyadmin) เพื่อสร้าง database และ GRANT สิทธิให้ wordpress เชื่อมเข้าต่อฐานข้อมูล
[root@cent6 html]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 14 Server version: 5.1.52 Source distribution Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type 'help;' or '\h' for help. Type '\c' to clear the current input statement mysql> CREATE DATABASE wordpress; Query OK, 1 row affected (0.00 sec) mysql> GRANT ALL ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'password'; Query OK, 0 rows affected (0.01 sec)
สร้างเสร็จเรียบร้อย กลับมาที่หน้าเว็บแล้วกดปุ่ม [Let’s go!]
ใส่ข้อมูลการเชื่อมต่อเข้าฐานข้อมูล แล้วกดปุ่ม [Submit]
โปรแกรมจะพยายามเขียนไฟล์คอนฟิก wp-config.php ให้ แต่ไม่สามารถเขียนได้ ฟ้องข้อความ “Sorry, but I can’t write the wp-config.php file.”
เราต้องสร้างไฟล์ wp-config.php ขึ้นมาเอง ด้วยการคัดลอกคอนฟิกที่หมดที่แสดงในช่องฟอร์ม สำหรับ Windows ให้คลิ้กเมาส์ในช่องฟอร์มแล้วกด [Ctrl]+[A] เพื่อเลือกข้อความทั้งหมดในฟอร์ม แล้วกด [Ctrl]+[C] เพื่อคัดลอก
สร้างไฟล์บนเซิร์ฟเวอร์ ด้วยคำสั่ง vi
[root@cent6 html]# vi wordpress/wp-config.php
หากเราใช้ PuTTY เพื่อ SSH เข้าเซิร์ฟเวอร์ลีนุกซ์ กด i เพื่อเข้าสู่โหมด INSERT แล้วกดปุ่ม [Shift]+[Insert] เพื่อวางข้อความ (paste) ที่คัดลอกมาได้
กดปุ่ม [Esc] เพื่อกลับสู่โหมดคำสั่ง แล้วพิมพ์ :wq เซฟไฟล์แล้วออกจาก vi
เนื่องจากในไฟล์คอนฟิก wp-config.php นี้ มีข้อมูล user, password ที่ใช้เชื่อมต่อเข้าฐานข้อมูลของ wordpress อยู่ด้วย เพื่อความปลอดภัย (security) แนะนำให้เปลี่ยน owner และ permission ให้ apache อ่านได้เท่านั้น ผู้ใช้ธรรมดา (user) ไม่สามารถเข้ามาอ่านได้
ตัวอย่างการเปลี่ยน permission และ owner ของไฟล์
[root@cent6 html]# ls -l wordpress/wp-config.php -rw-r--r--. 1 root root 3366 May 12 15:08 wordpress/wp-config.php [root@cent6 html]# chmod 400 wordpress/wp-config.php [root@cent6 html]# chown apache wordpress/wp-config.php [root@cent6 html]# ls -l wordpress/wp-config.php -r--------. 1 apache root 3366 May 12 15:08 wordpress/wp-config.php
หลังจากสร้างไฟล์ wp-config.php เรียบร้อย กลับมาหน้าเว็บแล้ว กดปุ่ม [Run the install]
หน้าใส่ข้อมูลเบื้องต้นของเว็บไซต์ และตั้ง username และ password ไว้เป็น admin ของโปรแกรม wordpress
แนะนำให้เปลี่ยน username จาก admin เป็นชื่ออื่น เพื่อเพิ่มความปลอดภัย ป้องกันการคาดเดา username, password
หน้าเว็บจะมีการตรวจสอบความยากง่ายของ password ที่เราใส่ แนะนำให้ตั้งยากหน่อย อย่างน้อยน่าจะได้ Medium หรือจะให้ดีก็ Strong
สำหรับการทดสอบ แนะนำให้คลิ้กไม่เลือก “Allow my site to appear in search engines like Google and Technorati.” ไว้ติดตั้งเว็บไซต์ใช้งานจริงแล้วค่อยเลือก
กดปุ่ม [Install WordPress]
หน้าแสดงการติดตั้งเสร็จสิ้น “Success”
กดปุ่ม [Log In] เพื่อเข้าสู่หน้า admin ของ wordpress (หรือเข้าโดยตรง http://192.168.5.62/wordpress/wp-admin/)
หน้าล็อกอินของ WordPress ใส่ username, password ที่ตั้งไว้
ถ้าล็อกอินสำเร็จ จะเข้าสู่หน้า Dashboard ของ WordPress
ติดตั้ง wordpress แล้วขึ้นหน้าจอขาว ไม่รู้ว่าต้องไปแก้centos ตรงไหนบ้าง ครับ(ดูจากภายนอกครับ ภายในวงแลนปกติดีครับ)
ตอนนี้ลงกับวินโดลินุกไว้ก่อน