国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > Apache > 正文

建立Apache+PHP3+MySQL驅(qū)動的動態(tài)網(wǎng)站

2024-08-27 18:29:01
字體:
供稿:網(wǎng)友

apache是目前應(yīng)用最廣的web服務(wù)器,php3是一種類似asp的腳本語言,目前的發(fā)展趨勢大有超過perl之勢,而mysql是一個輕量級的數(shù)據(jù)庫系統(tǒng),特別是用于網(wǎng)站建設(shè),這3個軟件均是自由軟件,是架設(shè)數(shù)據(jù)庫驅(qū)動的動態(tài)網(wǎng)站的最佳排檔。

本文只介紹這3個軟件的安裝,有關(guān)php和mysql的編程和使用請見其他資料。

一、如何獲得軟件?

獲得這3個軟件包的方法很多,目前大多數(shù)linux分發(fā)都捆綁了這3個軟件包,如redhat。本文介紹的安裝方法是基于從這些軟件的官方站點(diǎn)上下載獲得的軟件包進(jìn)行的,針對redhat linux 6.1,也介紹它們的安裝和配置。

這3個軟件的官方站點(diǎn)是:

軟件 官方網(wǎng)站 當(dāng)前版本 下載

apache http://www.apache.org/httpd.html 1.3.9 這里

php http://www.php.net/ 3.0.13 這里

mysql http://www.mysql.com 3.22.29 這里

從上述網(wǎng)站上,你應(yīng)該下在以下軟件包:

軟件 文件名

apache apache_1.3.9.tar.tgz (apache源代碼包)

php php-3.0.13.tar.gz (php3源代碼包)

mysql mysql-3.22.29-1.i386.rpm (mysql服務(wù)器)

mysql-client-3.22.29-1.i386.rpm (mysql客戶實用程序)

mysql-devel-3.22.29-1.i386.rpm (mysql包含文件和庫)

mysql-shared-3.22.29-1.i386.rpm (客戶程序共享庫)

二、安裝mysql

首先檢查你的系統(tǒng)是否已經(jīng)安裝了mysql:

rpm -q mysqlrpm -q mysql-clientrpm -q mysql-develrpm -q mysql-shared

如果你的版本比3.22.29舊,而且你想升級mysql到3.22.29版本,先用rpm -e刪除所有的mysql包,并:

rpm -i mysql-3.22.29-1.i386.rpm rpm -i mysql-client-3.22.29-1.i386.rpm rpm -i mysql-devel-3.22.29-1.i386.rpm rpm -i mysql-shared-3.22.29-1.i386.rpm 

或者直接升級到3.22.29版:

rpm -uvh mysql-3.22.29-1.i386.rpm rpm -uvh mysql-client-3.22.29-1.i386.rpm rpm -uvh mysql-devel-3.22.29-1.i386.rpm rpm -uvh mysql-shared-3.22.29-1.i386.rpm 

安裝mysql服務(wù)器時,安裝程序會提示你設(shè)置root口令,有關(guān)mysql的安裝后期設(shè)置,請參閱

上述安裝將mysql執(zhí)行文件放在"/usr/bin"目錄下,包含文件放在"/usr/include/mysql"目錄下,庫文件放在"/usr/lib/mysql"目錄下。

三、解壓縮apache和php并編譯和安裝

如上所述下載apache和php源代碼軟件包,加入下載的文件放在目錄"/apps"下,進(jìn)入"/apps"目錄,用ls檢查你有這兩個文件:

apache_1.3.9.tar.gz

php-3.0.13.tar.gz

1、解壓縮apache并配置

用下列命令解壓縮apache_1.3.9.tar.gz

tar zxvf apache_1.3.9.tar.gz

它講解壓縮的文件放在apache_1.3.9目錄下。然后配置apache:

cd apache_1.3.9 ( 進(jìn)入apache源代碼樹的目錄)

./configure --prefix=/www (假如你想安裝apache最終安裝在目錄"/www"下)

2、解壓縮php3并配置和編譯

cd .. (回到上級目錄)

tar zxvf php-3.0.13.tar.gz (解壓縮到目錄"php-3.0.13")

cd php-3.0.13  (進(jìn)入php3的源代碼目錄)

./configure --with-mysql --with-apache=../apache_1.3.9

make

make install

3、編譯和安裝apache

cd ..

./configure --prefix=/www --activate-module=src/module/php3/libphp3.a

make

make install (將apache安裝到"/www"目錄下)

上述這種方法是將php編譯進(jìn)了apache目標(biāo)代碼,所以其效率和性能上要比dso方式略好。將php作為apache的一個模塊的方法,見后面的介紹。

4、配置apache

cd /www (到apache主目錄)

cd conf  (進(jìn)入配置文件目錄)

編輯"httpf.conf"文件,將"addtype application/x-httpd-php3 .php3"一行的注釋去掉,這樣對于以".php3"為后最后綴的文件將作為php腳本文件處理。

5、啟動apache

關(guān)掉正在運(yùn)行的httpd(有時在系統(tǒng)啟動時啟動的),重新啟動新的httpd:

cd /www/bin./apachectl start

用ps aux命令檢查httpd已經(jīng)正確啟動。

6、測試

lynx localhost

如果你能看到頁面顯示,說明你已正確設(shè)置和啟動了httpd。

7、測試php

cd /www/htdocs (進(jìn)入默認(rèn)網(wǎng)頁存放目錄)

創(chuàng)建一個ex.php3文件,內(nèi)容如下:

$myvar="hello,world!"; echo $myvar; phpinfo(); ?>

運(yùn)行些列命令,檢查輸出是否是"hello,world"和當(dāng)前php的設(shè)置:

lynx localhost/ex.php3 

如果是,說明你的apache已經(jīng)可以處理php腳本文件了。恭喜你!

8、測試mysql數(shù)據(jù)庫

按照上面的方法安裝mysql后,建立一個mydb.dump文件,包含入下內(nèi)容:

create table employees (  id tinyint(4) default '0' not null auto_increment,  first varchar(20),  last varchar(20),  address varchar(255),  position varchar(50),  primary key (id),  unique id (id));insert into employees values (1,'bob','smith','128 here st, cityname','marketing manager');insert into employees values (2,'john','roberts','45 there st , townville','telephonist');insert into employees values (3,'brad','johnson','1/34 nowhere blvd, snowston','doorman');

然后用這個sql腳本在mysql中創(chuàng)建一個數(shù)據(jù)庫mydb,在shell下打入下列命令:

mysql -u root -pyourpasswd mydb

這里,如果你在案裝mysql后設(shè)置了root用戶的口令,yourpasswd換成你的口令,如果沒有為root設(shè)置口令,則去掉-p選項。

創(chuàng)建后上述數(shù)據(jù)庫后,創(chuàng)建一個php3腳本文件,如test.php3,其內(nèi)容如下:

$db = mysql_connect("localhost", "root");mysql_select_db("mydb",$db);$result = mysql_query("select * from employees",$db);printf("first name: %s/n", mysql_result($result,0,"first"));printf("last name: %s/n", mysql_result($result,0,"last"));printf("address: %s/n", mysql_result($result,0,"address"));printf("position: %s/n", mysql_result($result,0,"position"));?>

如果root設(shè)置了口令,則在上面的$db = mysql_connect("localhost", "root");中加入口令:

$db = mysql_connect("localhost", "root","yourpasswd");

然后測試test.php3:

lynx localhost/test.php3

其顯示的結(jié)果應(yīng)該是:

first name: boblast name: smithaddress: 128 here st, citynameposition: marketing manager

如果是,說明你的php3已經(jīng)能夠處理mysql數(shù)據(jù)庫了,再次恭喜你!!

三、將php3編譯成apache的一個模塊

上面的方法是將php3編譯進(jìn)了apache的二進(jìn)制代碼中,其優(yōu)點(diǎn)是配置簡單,效率高,但一個更靈活的方法是將php3作為apache的一個dso(dynamic shared object)模塊,詳見apache文檔。下面就介紹如何將php3編譯為apache的一個模塊。

1、配置apache

進(jìn)入apache源代碼目錄,運(yùn)行下列命令,(假定將httpd安裝在"/web"目錄下)

cd apache_1.3.9

./comfigure --prefix=/www --enable-shared=max

make (編譯apache)

make install (將apache安裝在/web目錄下)

2、配置php3并編譯和安裝

假定你已將apache目錄下(請記住該目錄),進(jìn)入php3的源代碼目錄進(jìn)行配置和編譯:

cd php-3.0.13./configure --with-apxs=/web/bin/apxs  --with-config-file-path=/web   --with-mysqlmake  (編譯)make install (安裝libphp3.so)

上述配置是將php3的配置文件"php3.ini"放在/web目錄下,你必須手工將php3源代碼目錄下的"php3.ini-dist"拷貝到/web目錄下,重新修改/web/conf目錄下的httpd.conf文件,加入下列文字以便讓apache支持php3腳本文件,它由上述的make install自動修改:

addmodule mod_php3.c

loadmodule php3_module libexec/libphp3.so

addtype application/x-httpd-php3 .php3重新啟動httpd:

/web/bin/apachectl stop (停止)

/web/bin/apachectl start (啟動)

3、測試

你仍然可以用上述的php3腳本的例子進(jìn)行測試,如果正確,你已經(jīng)正確地安裝了!

四、如何從rpm包進(jìn)行安裝和配置

在很多l(xiāng)inux的發(fā)行版本中都捆綁了apache、php3和mysql,由于mysql本身是以rpm格式分發(fā)的,因此其安裝上面已經(jīng)介紹,下面僅介紹apache和php的安裝和配置。本文基于redhat linux 6.1。php的設(shè)計者不建議從rpm配置php3,但它將在php4中解決這個問題。由于從rpm重新配置和安裝php比較麻煩,所以以下方法僅供參考。

1、你需要的rpm文件

為了重新配置和編譯php,你應(yīng)該下載php3的源代碼rpm:php-3.0.12.6.src.rpm。該軟件包可生成下列rpm:

php-3.0.12-6.i386.rpm    php-manual-3.0.12-6.i386.rpmphp-imap-3.0.12-6.i386.rpm  php-ldap-3.0.12-6.i386.rpmphp-pgsql-3.0.12-6.i386.rpm

在安裝新的rpm之前,你應(yīng)該首先刪除已經(jīng)的php軟件包:

rpm -e php-imap php-ldap php-pgsql php php-manual

重新編譯php需要以下軟件包:

apache  apache-devel

postgresql  postgresql-devel

mysql-devel

2、重新配置、編譯和安裝php3

安裝php3源代碼包:

rpm -i php-3.0.12-6.src.rpm

它將php源代碼安裝在/usr/src/redhat目錄下,進(jìn)入該目錄,按下面的命令進(jìn)行配置和編譯:

cd /usr/src/redhat/specs

vi php.spec

編輯php.spec文件,找到%build小節(jié),在關(guān)于./configure的選項部分加入:

--with-mysql=/usr /

選項,它指出php支持mysql數(shù)據(jù)庫。

%buildcd imap-4.5make rpm_opt_flags="$rpm_opt_flags" lnpcd ..autoconfcflags="-fpic" ./configure --prefix=/usr /    --with-apxs=/usr/sbin/apxs /    --with-config-file-path=/etc/httpd /    --enable-safe-mode /    --with-exec-dir=/usr/bin /    --with-system-regex /    --disable-debug /    --with-zlib /    --enable-debugger /    --enable-magic-quotes /    --with-mysql=/usr /    --enable-track-vars

保存修改,重建rpm包:

rpm -bb /usr/src/redhat/specs/php.spec

最后,在/usr/src/redhat/rpms/i386目錄下可以找到相應(yīng)的二進(jìn)制rpm包,重新安裝它們:

rpm -i /usr/src/redhat/rpms/i386/*

3、配置httpd.conf和srm.conf

在安裝好php后,你應(yīng)該配置httpd以便支持php3腳本。首先編輯/etc/httpd/conf/httpd.conf,找出下列兩行,去掉它們前面的注釋符#:

addmodule mod_php3.c

loadmodule php3_module modules/libphp3.so

在編譯/etc/httpd/conf/srm.conf,去掉下面一行的注釋符#:

addtype application/x-httpd-php3 .php3

這樣,httpd對于以.php3結(jié)尾的文件視為php腳本文件。

4、測試

你可以用上面的兩個例子做測試。

5、總結(jié)

redhat等一些linux發(fā)行商雖然在它們的分發(fā)中捆綁了上述三個軟件包,但php的rpm包初始是不支持mysql數(shù)據(jù)庫的。另外,原來的mod_php3或mod_php的使用方式已經(jīng)過時,而新的格式是libphp3.so,因此在redhat標(biāo)準(zhǔn)的二進(jìn)制分發(fā)中已經(jīng)不包含mod_php3或mod_php了。

如果你想一直使用這三個軟件的最新版本,前二種方法最適用。

上述只是介紹了這三個軟件的安裝,你必須配置php和mysql的安全性設(shè)置。

國內(nèi)最大的酷站演示中心!
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 松桃| 涿州市| 德昌县| 福海县| 渭南市| 嘉禾县| 南部县| 驻马店市| 利辛县| 徐汇区| 礼泉县| 鄂托克旗| 湟中县| 深泽县| 安图县| 西乌珠穆沁旗| 盐亭县| 旬阳县| 泾川县| 德昌县| 杭锦后旗| 台前县| 宁强县| 博客| 汨罗市| 油尖旺区| 正阳县| 湖州市| 黄梅县| 武宣县| 康马县| 福海县| 理塘县| 大姚县| 千阳县| 武冈市| 喀喇| 清水县| 抚顺市| 郓城县| 平昌县|