php

位置:IT落伍者 >> php >> 浏览文章

Apache+PHP+MySQL建立数据库驱动的动态网站


发布日期:2018年04月29日
 
Apache+PHP+MySQL建立数据库驱动的动态网站

Apache是目前应用最广的Web服务器PHP是一种类似ASP的易学的脚本语言而且性能和功能都比ASP要强而MySQL又是一个Linux上应用最多的数据库系统特别是用于网站建设个软件均是自由软件是架设数据库驱动的动态网站的最佳排档

所需软件

Apacheapache_tartgz(apache源代码包)

PHPphptargz(PHP源代码包)

MySQLMySQLsparchrpm(MySQL服务器)

MySQLclientsparchrpm(MySQL客户实用程序)

MySQLdevelsparchrpm(MySQL包含文件和库)

MySQLsharedsparchrpm(客户程序共享库)

安装MySQL

首先检查你的系统是否已经安装了MySQL

rpmqMySQL

rpmqMySQLclient

rpmqMySQLdevel

rpmqMySQLshared

如果你的版本比而且你想升级MySQL到版本先用rpme删除所有的MySQL包

rpmiMySQLsparchrpm

rpmiMySQLclientsparchrpm

rpmiMySQLdevelsparchrpm

rpmiMySQLsharedsparchrpm

安装MySQL服务器时安装程序会提示你设置root口令有关MySQL的安装后期设置请参阅

上述安装将MySQL执行文件放在/usr/bin目录下包含文件放在/usr/include/mysql目录下库文件放在/usr/lib/mysql目录下

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

如上所述下载apache和php源代码软件包加入下载的文件放在目录/apps进入/apps目录用ls检查你有这两个文件

apache_targz

phptargz

解压缩apache并配置

用下列命令解压缩apache_targz

tarzxvfapache_targz

它讲解压缩的文件放在apache_目录下然后配置apache

cdapache_(进入apache源代码树的目录)

/configureprefix=/www(假如你想安装apache最终安装在目录/www下)

解压缩php并配置和编译

cd(回到上级目录)

tarzxvfphptargz(解压缩到目录php

cdphp(进入php的源代码目录)

/configurewithmysql=/usrwithapache=/apache_

make

makeinstall

编译和安装apache

cd

/configureprefix=/wwwactivatemodule=src/module/php/libphpa

make

makeinstall(将apache安装到/www目录下)

上述这种方法是将php编译进了apache目标代码所以其效率和性能上要比DSO方式略好将php作为apache

的一个模块的方法见后面的介绍

配置apache

cd/www(到apache主目录)

cdconf(进入配置文件目录)

编辑文件AddTypeapplication/x一行的注释去掉这样对于

php为后最后缀的文件将作为php脚本文件处理

启动apache

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

cd/www/bin

/apachectlstart

用psaux命令检查httpd已经正确启动

测试

运行startx然后运行netscape

在地址栏输入

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

7、测试php

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

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

<html>

<body>

<?

$myvar="Hello,World!";

echo$myvar;

phpinfo();

?>

</body>

</html>

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

在netscape的地址栏输入:3

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

8、测试MySQL数据库

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

CREATETABLEemployees(idtinyint(4)DEFAULT'0'NOTNULL

AUTO_INCREMENT,firstvarchar(20),lastvarchar(20),

addressvarchar(255),positionvarchar(50),PRIMARYKEY(id),

UNIQUEid(id));

INSERTINTOemployeesVALUES(1,'Bob','Smith',

'128HereSt,Cityname','MarketingManager');

INSERTINTOemployeesVALUES(2,'John','Roberts','45ThereSt,

Townville','Telephonist');

INSERTINTOemployeesVALUES(3,'Brad','Johnson','1/34NowhereBlvd,

Snowston','Doorman');

然后用这个SQL脚本在MySQL中创建一个数据库mydb,在shell下打入下列命令:

mysql-uroot-pyourpasswdmydb<mydb.dump

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

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

<html>

<body>

<?php

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

mysql_select_db("mydb",$db);

$result=mysql_query("SELECT*FROMemployees",$db);

printf("FirstName:%s<br>\n",mysql_result($result,0,"first"));

printf("LastName:%s<br>\n",mysql_result($result,0,"last"));

printf("Address:%s<br>\n",mysql_result($result,0,"address"));

printf("Position:%s<br>\n",mysql_result($result,0,"position"));

?>

</body>

</html>

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

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

然后测试test.php3:

在netscape的地址栏输入:3

其显示的结果应该是:

FirstName:Bob

LastName:Smith

Address:128HereSt,Cityname

Position:MarketingManager

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

四、如何从RPM包进行安装和配置

在很多Linux的发行版本中都捆绑了apache、php3和MySQL,由于MySQL本身是以RPM格式分发的,因此其安装上面已经介绍,下面仅 介绍apache和php的安装和配置。本文基于RedHatLinux6.2。PHP的设计者不建议从RPM配置php3,但它将在php4中解决 这个问题。由于从RPM重新配置和安装php比较麻烦,所以以下方法仅供参考。

1、你需要的rpm文件

为了重新配置和编译php,你应该下载php3的源代码rpm:php-3.0.12.6.src.rpm。该软件包可生成下列rpm:

php-3.0.12-6.sparch64.rpmphp-manual-3.0.12-6.sparch64.rpm

php-imap-3.0.12-6.sparch64.rpmphp-ldap-3.0.12-6.sparch64.rpm

php-pgsql-3.0.12-6.sparch64.rpm

在安装新的rpm之前,你应该首先删除已经的php软件包:

rpm-ephp-imapphp-ldapphp-pgsqlphpphp-manual

重新编译php需要以下软件包:

apacheapache-devel

postgresqlpostgresql-devel

MySQL-devel

2、重新配置、编译和安装php3

安装php3源代码包:

rpm-iphp-3.0.12-6.src.rpm

它将php源代码安装在/usr/src/redhat目录下,进入该目录,按下面的命令进行配置和编译:

cd/usr/src/redhat/SPECS

viphp.spec

编辑php.spec文件,找到%build小节,在关于./configure的选项部分加入:

--with-mysql=/usr\

选项,它指出php支持MySQL数据库。

%build

cdimap-4.5

makeRPM_OPT_FLAGS="$RPM_OPT_FLAGS"lnp

cd..

autoconf

CFLAGS="-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/sparch64目录下可以找到相应的二进制rpm包,重新安装它们:

rpm-i/usr/src/redhat/RPMS/sparch64/*

3、配置和nf

在安装好php后,你应该配置httpd以便支持php3脚本。首先编辑/etc/,找出下列两行,去掉它们前面的注释符#:

AddModulemod_php3.c

LoadModulephp3_modulemodules/libphp3.so

在编译/etc/,去掉下面一行的注释符#:

AddTypeapplication/x-3

这样,3结尾的文件视为php脚本文件。

4、测试

你可以用上面的例子做测试。

上述只是介绍了这三个软件的安装,你必须配置php和MySQL的安全性设置。

上一篇:Linux系统安装php扩展cURL

下一篇:分析PHP比ASP优秀的七个理由