ติดตั้ง PHP Module เพิ่มบน Fedora 11

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

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

ตัวอย่าง error เมื่อเรียกใช้ฟังก์ชั่นของโมดูลที่ไม่มีหรือยังไม่ได้ติดตั้ง

[root@fc11-64min html]# cat test-mysql.php
<?php
mysql_connect('localhost', 'mysql_user', 'mysql_password');
?>
[root@fc11-64min html]# php test-mysql.php
PHP Fatal error:  Call to undefined function mysql_connect() in /var/www/html/test-mysql.php on line 2

วิธีการดูว่าตอนนี้สามารถใช้ PHP Module อะไรบ้าง ทำได้โดยใช้ฟังก์ชั่น phpinfo() แล้วเรียกผ่านหน้าเว็บเพจ หรือรันคำสั่ง php ตามด้วยออปชั่น ‘-m’

[root@fc11-64min ~]# php -m
[PHP Modules]
bz2
calendar
ctype
curl
date
dbase
exif
filter
ftp
gettext
gmp
hash
iconv
json
libxml
openssl
pcntl
pcre
readline
Reflection
session
shmop
SimpleXML
sockets
SPL
standard
tokenizer
xml
zip
zlib
[Zend Modules]

บาง module สามารถติดตั้งจากแผ่นดีวีดีได้ แต่อื่นๆ ต้องดาวน์โหลดจาก Fedora 11 everything เอง

ใส่แผ่นดีวีดี Fedora 11 แล้วใช้คำสั่ง mount เพื่อดูไฟล์ในแผ่น

[root@fc11-64min ~]# mount /dev/scd0 /media/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@fc11-64min ~]# cd /media/Packages/
[root@fc11-64min Packages]# ls -l php*
-rw-r--r--. 2 root root 1257206 2009-04-18 00:28 php-5.2.9-2.fc11.x86_64.rpm
-rw-r--r--. 2 root root 2390634 2009-04-18 00:29 php-cli-5.2.9-2.fc11.x86_64.rpm
-rw-r--r--. 2 root root  271487 2009-04-18 00:29 php-common-5.2.9-2.fc11.x86_64.rpm
-rw-r--r--. 2 root root   35700 2009-04-18 00:31 php-ldap-5.2.9-2.fc11.x86_64.rpm
-rw-r--r--. 2 root root   89294 2009-04-18 00:31 php-mysql-5.2.9-2.fc11.x86_64.rpm
-rw-r--r--. 2 root root   67938 2009-04-18 00:31 php-pdo-5.2.9-2.fc11.x86_64.rpm

ติดตั้ง PHP MySQL Module

ใช้คำสั่ง rpm เพื่อติดตั้ง module เพิ่มเติม สำหรับการติดตั้ง MySQL module ต้องติดตั้ง PDO module ก่อน

[root@fc11-64min Packages]# rpm -ivh php-pdo-5.2.9-2.fc11.x86_64.rpm
[root@fc11-64min Packages]# rpm -ivh php-mysql-5.2.9-2.fc11.x86_64.rpm

ใช้คำสั่ง php เพื่อตรวจสอบ module ที่ติดตั้งเพิ่มเติม

[root@fc11-64min Packages]# php -m
[PHP Modules]
bz2
calendar
ctype
curl
date
dbase
exif
filter
ftp
gettext
gmp
hash
iconv
json
libxml
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
readline
Reflection
session
shmop
SimpleXML
sockets
SPL
standard
tokenizer
xml
zip
zlib
[Zend Modules]

หลังจากการติดตั้ง PHP module เพิ่มเติม การรัน PHP ที่เป็น command line สามารถเรียกใช้โมดูลใหม่นี้ได้เลย แต่ถ้าต้องการเรียกผ่านเว็บเซอร์วิส ต้องรีสตาร์ตเว็บเซิร์ฟเวอร์ก่อน

ใช้คำสั่ง service เพื่อรีสตาร์ตเว็บเซิร์ฟเวอร์

[root@fc11-64min Packages]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

ตัวอย่างการใช้ฟังก์ชั่น phpinfo() แสดงผลผ่านหน้าเว็บเพจ เพื่อดูข้อมูลรายละเอียดโมดูล MySQL ที่ติดตั้งใหม่

phpinfo(); MySQL module

 

ข้อมูลอ้างอิง

Leave a Reply

Your email address will not be published.