服务器 频道

建立Apache+PHP3+MySQL驱动动态网站

三、解压缩apache和php并编译和安装

如上所述下载apache和php源代码软件包,加入下载的文件放在目录"/apps"下,进入"/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 ( 进入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  (进入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编译进了apache目标代码,所以其效率和性能上要比DSO方式略好。将php作为apache的一个模块的方法,见后面的介绍。

4、配置apache

cd /www (到apache主目录)

cd conf  (进入配置文件目录)

编辑"httpf.conf"文件,将"AddType application/x-httpd-php3 .php3"一行的注释去掉,这样对于以".php3"为后最后缀的文件将作为php脚本文件处理。

5、启动apache

关掉正在运行的httpd(有时在系统启动时启动的),重新启动新的httpd:

cd /www/bin./apachectl start

用ps aux命令检查httpd已经正确启动。

6、测试

lynx localhost

如果你能看到页面显示,说明你已正确设置和启动了httpd。

7、测试php

cd /www/htdocs (进入默认网页存放目录)

创建一个ex.php3文件,内容如下:

$myvar="Hello,World!"; 
echo $myvar; 
phpinfo(); 
?>

运行些列命令,检查输出是否是"Hello,World"和当前php的设置:

lynx localhost/ex.php3 

如果是,说明你的apache已经可以处理php脚本文件了。恭喜你!

8、测试MySQL数据库

按照上面的方法安装MySQL后,建立一个mydb.dump文件,包含入下内容:

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中创建一个数据库mydb,在shell下打入下列命令:

mysql -u root -pyourpasswd mydb

这里,如果你在案装MySQL后设置了root用户的口令,yourpasswd换成你的口令,如果没有为root设置口令,则去掉-p选项。

创建后上述数据库后,创建一个php3脚本文件,如test.php3,其内容如下:

$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设置了口令,则在上面的$db = mysql_connect("localhost", "root");中加入口令:

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

然后测试test.php3:

lynx localhost/test.php3

其显示的结果应该是:

First Name: Bob
Last Name: Smith
Address: 128 Here St, Cityname
Position: Marketing Manager

如果是,说明你的php3已经能够处理MySQL数据库了,再次恭喜你!!

0
相关文章