搜索
首页数据库mysql教程建立Apache+PHP3+MySQL驱动动态网站

Apache是目前应用最广的Web服务器,PHP3是一种类似ASP的脚本语言,目前的发展趋势大有超过Perl之势,而MySQL是一个轻量级的数据库系统,特别是用于网站建设,这3个软件均是自由软件,是架设数据库驱动的动态网站的最佳排档。 本文只介绍这3个软件的安装,有

  Apache是目前应用最广的Web服务器,PHP3是一种类似ASP的脚本语言,目前的发展趋势大有超过Perl之势,而MySQL是一个轻量级的数据库系统,特别是用于网站建设,这3个软件均是自由软件,是架设数据库驱动的动态网站的最佳排档。

  本文只介绍这3个软件的安装,有关PHP和MySQL的编程和使用请见其他资料。

  一、如何获得软件?

  获得这3个软件包的方法很多,目前大多数Linux分发都捆绑了这3个软件包,如RedHat。本文介绍的安装方法是基于从这些软件的官方站点上下载获得的软件包进行的,针对RedHat Linux 6.1,也介绍它们的安装和配置。

  这3个软件的官方站点是:

  软件 官方网站 当前版本 下载

  Apache 1.3.9 这里

  PHP 3.0.13 这里

  MySQL 3.22.29 这里

  从上述网站上,你应该下在以下软件包:

  软件 文件名

  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服务器)

  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

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

rpm -q MySQL rpm -q MySQL-client rpm -q MySQL-devel rpm -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服务器时,安装程序会提示你设置root口令,有关MySQL的安装后期设置,请参阅。

  上述安装将MySQL执行文件放在"/usr/bin"目录下,包含文件放在"/usr/include/mysql"目录下,库文件放在"/usr/lib/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数据库了,再次恭喜你!!

  三、将php3编译成apache的一个模块

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
您可以使用哪些工具来监视MySQL性能?您可以使用哪些工具来监视MySQL性能?Apr 23, 2025 am 12:21 AM

如何有效监控MySQL性能?使用mysqladmin、SHOWGLOBALSTATUS、PerconaMonitoringandManagement(PMM)和MySQLEnterpriseMonitor等工具。1.使用mysqladmin查看连接数。2.用SHOWGLOBALSTATUS查看查询数。3.PMM提供详细性能数据和图形化界面。4.MySQLEnterpriseMonitor提供丰富的监控功能和报警机制。

MySQL与SQL Server有何不同?MySQL与SQL Server有何不同?Apr 23, 2025 am 12:20 AM

MySQL和SQLServer的区别在于:1)MySQL是开源的,适用于Web和嵌入式系统,2)SQLServer是微软的商业产品,适用于企业级应用。两者在存储引擎、性能优化和应用场景上有显着差异,选择时需考虑项目规模和未来扩展性。

在哪些情况下,您可以选择SQL Server而不是MySQL?在哪些情况下,您可以选择SQL Server而不是MySQL?Apr 23, 2025 am 12:20 AM

在需要高可用性、高级安全性和良好集成性的企业级应用场景下,应选择SQLServer而不是MySQL。1)SQLServer提供企业级功能,如高可用性和高级安全性。2)它与微软生态系统如VisualStudio和PowerBI紧密集成。3)SQLServer在性能优化方面表现出色,支持内存优化表和列存储索引。

MySQL如何处理角色集和碰撞?MySQL如何处理角色集和碰撞?Apr 23, 2025 am 12:19 AM

mySqlManagesCharacterSetsetSandCollat​​ionsyutusututf-8asthEdeFault,允许ConfigurationAtdataBase,table和columnlevels,AndrequiringCarefullageLignmentToavoidMismatches.1)setDefeaultCharactersetTercharactersetEtCollacterSeteTandColletationForAdataBase.2)conformentcollecharactersettersetertersetcollat​​ertersetcollat​​ioncollat​​ion

MySQL中有什么触发器?MySQL中有什么触发器?Apr 23, 2025 am 12:11 AM

MySQL触发器是与表相关联的自动执行的存储过程,用于在特定数据操作时执行一系列操作。1)触发器定义与作用:用于数据校验、日志记录等。2)工作原理:分为BEFORE和AFTER,支持行级触发。3)使用示例:可用于记录薪资变更或更新库存。4)调试技巧:使用SHOWTRIGGERS和SHOWCREATETRIGGER命令。5)性能优化:避免复杂操作,使用索引,管理事务。

您如何在MySQL中创建和管理用户帐户?您如何在MySQL中创建和管理用户帐户?Apr 22, 2025 pm 06:05 PM

在MySQL中创建和管理用户账户的步骤如下:1.创建用户:使用CREATEUSER'newuser'@'localhost'IDENTIFIEDBY'password';2.分配权限:使用GRANTSELECT,INSERT,UPDATEONmydatabase.TO'newuser'@'localhost';3.修正权限错误:使用REVOKEALLPRIVILEGESONmydatabase.FROM'newuser'@'localhost';然后重新分配权限;4.优化权限:使用SHOWGRA

MySQL与Oracle有何不同?MySQL与Oracle有何不同?Apr 22, 2025 pm 05:57 PM

MySQL适合快速开发和中小型应用,Oracle适合大型企业和高可用性需求。1)MySQL开源、易用,适用于Web应用和中小型企业。2)Oracle功能强大,适合大型企业和政府机构。3)MySQL支持多种存储引擎,Oracle提供丰富的企业级功能。

与其他关系数据库相比,使用MySQL的缺点是什么?与其他关系数据库相比,使用MySQL的缺点是什么?Apr 22, 2025 pm 05:49 PM

MySQL相比其他关系型数据库的劣势包括:1.性能问题:在处理大规模数据时可能遇到瓶颈,PostgreSQL在复杂查询和大数据处理上表现更优。2.扩展性:水平扩展能力不如GoogleSpanner和AmazonAurora。3.功能限制:在高级功能上不如PostgreSQL和Oracle,某些功能需要更多自定义代码和维护。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)