【问题标题】:Php, Apache and MySQLPHP、Apache 和 MySQL
【发布时间】:2016-03-31 22:07:12
【问题描述】:

我对与数据库通信的概念有冲突。

如果我有一个网站,我不能直接访问 MySQL,我需要一个 PHP 的 Web 服务器来与 MySQL 通信,PHP 将使用 HTML 与网站通信,对吗? 阿帕奇的作用是什么? 如果我们有这些工具,为什么还需要 WampServer?我们可以创建自己的服务器并让软件在其上运行。

我正在为我的大学做一个高级项目,但由于对这些概念的理解不足,我不知道我想使用什么工具。

【问题讨论】:

标签: php mysql apache


【解决方案1】:

PHP 不是网络服务器,它只是一种运行在网络服务器之上的语言。 Apache 是 Web 服务器。 PHP 在 Apache 之上运行。使用 WampSever/XAMP/LAMP 等工具的原因只是将这些软件捆绑在一起。安装 PHP、Apache、MySQL 等并将它们配置为一起工作可能需要一段时间。 WAMP/XAMP/LAMP 可以更轻松地快速部署这些软件包。

【讨论】:

  • 这似乎很清楚,但是每当我使用 php 时我必须使用 apache 是强制性的吗?以及如何配置它们以协同工作?如果我们可以更详细地介绍,因为我想完成这个主题并很好地理解它们,或者如果你知道任何解释概念的教程。谢谢
  • 你不需要使用 apache。您可以使用任何支持 PHP(即 IIS)的网络服务器 如果您在配置 WAMP 时遇到问题?或者这里有一个教程:php.net/manual/en/install.windows.apache2.php
【解决方案2】:

Apache 是一个 Web 服务器,它通过 HTTP 协议接收请求,并以文件的内容或脚本的结果进行响应。

PHP 是一种服务器端脚本语言(在此上下文中)。当 Apache 收到对此类文件的请求时,它会以将其作为程序运行的输出作为响应。

PHP 可以与 MySQL 等数据库交互以存储和检索数据。

WampServer 是所有这些的预打包集合,可帮助您快速启动并运行开发环境。

【讨论】:

  • 你有什么教程可以帮助我理解这些概念吗?
  • 我没有。我建议安装 WampServer 并尝试将文件放入 Web 根目录,看看是否有帮助。我不知道你想在你的项目中做什么,所以我不能说这是否是最好的工具,但它肯定是一个灵活的起点。
  • 我想了解有关这些工具 apache、php 与 MySQL 以及网站和移动应用程序的作用的概念。
  • 我的项目是一个包含大型数据库的android应用程序,所以如果我想使用服务器,我需要使用php吗?而且php只用于网站,那么我可以用于android应用程序吗??
  • PHP 用在网站上,但不一定要输出 HTML。 HTTP 是一种用于应用程序服务器通信的有用协议,您可以发送/接收 XML 或 JSON 或任何您希望的格式。
【解决方案3】:

(这将是对@marwan评论“我的项目是包含大型数据库的android应用程序的评论,所以如果我想使用服务器,我需要使用php吗?并且只使用php用于网站,那么我可以将什么用于 android 应用程序?”,但字符用完了)

@Marwan 您可以将您的 android 应用程序直接连接到数据库,尽管不建议这样做,Why don't connect android to database directly?,有很多不这样做的原因,安全性是一个主要问题。 Php 用于 Web 服务,这些 Web 服务可能会或可能不会呈现为人类可读的网页。许多 Web 服务用于创建旨在供其他程序使用的输出。 android 应用程序将使用其中一种服务,例如 RESTful api (http://www.drdobbs.com/web-development/restful-web-services-a-tutorial/240169069) 从客户端(android 应用程序)检索数据或从数据库中检索数据或将处理从客户端(android 应用程序)转移到服务器。

除了 php 和 apache 之外,还有更多的语言和更多的服务器可以使用,但这是一个非常常见的设置(我个人最喜欢的)。

如果您想了解 apache 和 php,我建议您在 WAMP 服务器上设置 LAMP 服务器,该软件是开源的,因此是一个很好的学习工具 (https://www.atlantic.net/blog/why-startups-prefer-lamp-to-wamp/)。如果你没有 linux 机器,你可以在 VM 上运行 LAMP 堆栈,https://www.virtualbox.org/https://www.vmware.com/products/player,甚至可能是 rasberry pi https://www.element14.com/community/community/raspberry-pi/raspberrypi_projects/blog/2014/02/24/raspberry-pi-as-a-lamp-server/。有很多方法可以在 linux 上安装 LAMP 堆栈(https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-14-04,unbuntu 14.04)。

Php 的文档很好,有很多教程,还有很多关于 SO 的问答。 http://php.net/manual/en/index.php

http://php.net/manual/en/tutorial.php

http://www.w3schools.com/php/

https://stackoverflow.com/questions/tagged/php

【讨论】:

    猜你喜欢
    • 2017-05-25
    • 2016-11-28
    • 1970-01-01
    • 2012-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-10
    相关资源
    最近更新 更多