ติดตั้ง PHP Module เพิ่มบน Fedora 11 « SpaLinux.com
ติดตั้ง PHP Module เพิ่มบน Fedora 11
Saturday 18 July 2009 @ 3:01 pm

จากบทความ ติดตั้ง 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

 

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

Tags:




Leave a comment