構架Linux下的PHP+MySQL開發環境

來源:互聯網
上載者:User

作者:餘海發 
目前Web開發人員常使用的開發語言是PHP、ASP和JSP。這三種語言各有所長,也各自擁有一大批忠實的開發人員和使用者。對於使用PHP做Web開發的人員來說,很多人選擇了在Windows下進行開發,而最終開發出的程式則運行在Unix類(如Linux/FreeBSD)的作業系統上。開發環境和實施環境的不同,使得許多開發人員的系統知識稍顯欠缺。作為一個使用PHP進行Web開發的人員而沒有用過Linux,這種現象並不少見。更不要說具備一些簡單的Linux系統知識,能夠自己安裝開發環境了。一個開發人員瞭解一些系統知識是很有必要的,對於開發也是很有協助的。下面介紹一下如何構架Linux下的PHP+MySQL開發環境。

在Linux下開發Web應用,一定要有一個HTTP Server,這就是著名的Apache。當然資料庫是一定少不了的,Linux支援多種資料庫,包括像Oracle、DB2等這樣大型的資料庫。不過與PHP最為相配、也是運用最多的資料庫當屬MySQL了。另外PHP語言本身也是必不可少的。下面是它們相應的網站:

Apache http://www.apache.org

MySQL http://www.mysql.com

PHP http://www.php.net

Linux上的軟體通常有著很快的升級速度,這可能是開放源碼軟體的優點之一吧。就Apache而言,有1.3.X版本與2.X版本兩個分支。由於2.X是在1.3.X上進行重寫,因此在結構和功能上都有很大的改進。關於Apache 1.3.X的安裝介紹比較多,故本文選用了Apache 2.X版本。同樣,也選用了支援Apache 2.X版本的PHP版本。大家可以從其各自的網站上去下載Apache、MySQL、PHP的最新版本。以下是2003年9月16日下載到的軟體包:

mysql-4.0.15.tar.gz

php-4.3.3.tar.gz

httpd-2.0.47.tar.gz

有了這三個軟體包,就可以開始在Linux下構建一個支援PHP+MySQL的Web伺服器了。這也正是目前常用的Web應用環境。

我們把下載的三個軟體包放到/var/local目錄下(這是筆者個人的習慣),它們都是tar.gz包,可以用命令tar -xzpvf 包名,把它們在目前的目錄(/var/local/)中解開:

cd /var/local
tar -xzpvf mysql-4.0.15.tar.gz
tar -xzpvf php-4.3.3.tar.gz
tar -xzpvf httpd-2.0.47.tar.gz
 

解包後可以開始進入正式安裝。

安裝MySQL

1.編譯

cd mysql-4.0.15/
../configure --prefix=/usr/local/mysql
make
make install
cd ..
 

2.增加使用者

adduser  -s /bin/false mysql
 

3.初始化並設定目錄許可權

/usr/local/mysql/bin/mysql_install_db
chown -R root /usr/local/mysql/
chown -R mysql /usr/local/mysql/var
chgrp -R mysql /usr/local/mysql/
 

4.加入庫

echo /usr/local/mysql/lib/mysql/lib >>/etc/ld.so.conf
ldconfig
 

5.使之啟動時自動運行

echo "/usr/local/mysql/bin/mysqld_safe &" >>/etc/rc.d/rc.local
 

6.啟動MySQL

/usr/local//mysql/bin/mysqld_safe &
 


7.安全性設定

修改MySQL的root密碼:

/usr/local/mysql/bin/mysqladmin -uroot password abcdefg
 


8.測試

[root@terry bin]# /usr/local/mysql/bin/mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 4.0.15
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> delete from user where user=''; (刪除所有使用者名稱為空白的使用者,可以提高安全性)
Query OK, 2 rows affected (0.00 sec)
mysql> quit
Bye
 


安裝Apache

cd httpd-2.0.47/
../configure --prefix=/usr/local/httpd  --enable-so
make
make install
cd ..
 

現在已經將Apache 2.0.47安裝到 /usr/local/httpd目錄中,安裝好的Apache支援可裝載模組和標準的MPM prefork。如果安裝過程中沒有出現錯誤,便可以使用如下命令啟動Apache服務:

/usr/local/httpd/bin/apachectl start
 

如果啟動成功,將啟動命令加入rc.local,使之在系統啟動時自動運行:

echo "/usr/local/httpd/bin/apachectl start &" >>/etc/rc.d/rc.local
 

停止Apache服務,並繼續安裝PHP:

/usr/local/httpd/bin/apachectl stop

安裝PHP

cd php-4.3.3

../configure --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql
make
make install
cp php.ini-dist /usr/local/lib/php.ini
 

這種安裝方式是將PHP作為Apache的SAPI模組來進行安裝,它僅是其中的一種安裝方式,更多的方法請參閱相關文檔。

PHP和Apache安裝後的基本配置

1.Apache的配置

Apache的設定檔是/usr/local/httpd/conf/httpd.conf,編輯httpd.conf 檔案,在檔案結尾加上以下兩行:

LoadModule php4_module modules/libphp4.so
AddType application/x-httpd-php .php .php3
 
同時修改DirectoryIndex為:

DirectoryIndex index.html index.php index.php3

Apache的配置內容比較豐富,其它Apache相關配置請參考Apache的相關文檔。

2.PHP的配置

Apache的設定檔是/usr/local/lib/php.ini,編輯php.ini檔案來配置PHP的選項。特別注意的是,安裝完成後register_globals變數預設設定為Off,需要將它改成On。否則會出現PHP讀不到post的資料的現象。

register_globals=On
 

其它PHP的選項請參考相關文檔。

3.測試

可以寫一個簡單的PHP檔案來測試安裝,檔案包含下列一行:

<? phpinfo();?>
 

將其儲存為/usr/local/httpd/htdocs/info.php,啟動Apache,然後在瀏覽器中瀏覽。

圖1 PHP資訊


如果看到如圖1的資訊即表示成功了。以上安裝都是在Red Hat 9.0上進行的。到此為止,已經安裝好一個支援PHP+MySQL的Web環境。另外Linux下有許多強大的編輯器可以用來寫PHP程式,比如vi、emacs等;此外還有一些圖形化的編輯器或是Web開發專用的編輯器,這就有待個人發掘了。當真正轉到Linux下進行開發的時候,就會慢慢體會到它的強大和得心應手。

本文與其它介紹Apache安裝的文章不同,不是介紹Apache 1.3.x,而是介紹了如何用Red Hat 9.0+Apache 2.0+PHP 4.3+MySQL 4.0來架構Web開發環境,所選取的是目前最新版本的軟體,均從原始碼開始編譯,而不是下載二進位檔案來進行安裝。



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.