为什么不使用 WAMP 堆栈?

mat*_*ang 30 mysql windows php lamp apache-2.2

这是一个关于使用 *AMPP 堆栈的规范问题

我最近和一些有经验的人交谈,他们建议我不要使用 WAMP 堆栈,而是分别安装 apache、mysql 和 php。

不过,我不明白他们为什么提出这个建议,所以有人可以告诉我吗?

WAMP 有什么特别的缺点,还是单独安装所有这些有什么特别的好处?

既然 WAMP 栈本身是由 apache、mysql 和 php 组成的,那么使用 WAMP 栈和单独安装它们有什么区别呢?

EEA*_*EAA 39

既然 WAMP 栈本身是由 apache、mysql 和 php 组成的,那么使用 WAMP 栈和单独安装它们有什么区别呢?

有很多差异,但最令人不安的三个是:

  1. 不安全的配置
  2. 升级的难度和滞后
  3. 非标准配置/二进制位置

扩展 #1:WAMP、MAMP、LAMPP、XAMPP 等被设计为一键式堆栈安装程序,使开发人员可以轻松地以尽可能小的阻力快速开始工作。因此,许多配置值被有意置于非常不安全的状态。这对于开发工作来说是可以的,但在生产中却非常愚蠢。

然后,对于#2,操作系统供应商可以非常轻松地使用最新的功能更新和安全补丁来升级您的 LAMP 堆栈。当他们的包被发布到他们的官方仓库时,他们已经通过了大量的测试,他们破坏你系统上任何东西的可能性相当低。在绝大多数情况下,您可以使用单个命令升级所有内容。

最后,#3:一键安装程序将他们的文件放在非常非标准的位置。因此,当您(或其他任何人)进行故障排除时,您只能在整个文件系统中搜索 php.ini 文件。当您从发行版的包存储库安装 LAMP 堆栈时,所有内容都将位于预期的、众所周知的位置。

  • 警告:我写这篇文章时假设您在 Linux 上运行,但显然您不是。许多相同的观点在 Windows 上仍然适用。不过,我应该承认,您确实应该在 Linux 上运行。你会有更愉快的体验。 (2认同)

MDM*_*rra 21

首先,apache、php 和 MySQL 都是 *nix 应用程序移植到 Windows。通常更喜欢在生产环境中的原生平台上运行工具。

其次,预配置的 *AMP 包通常具有易受攻击的开箱即用配置。大多数软件包都附带一个自述文件,说明它们仅供开发人员使用,因此不适用于生产。

如果您真的想在模拟生产的环境中进行开发,您将使用类似于您的生产环境的配置,而 WAMP 或 LAMP 包则无法实现。


rig*_*uff 6

如果问题是 - 使用 Windows 作为我的平台,为什么有些人会告诉我单独安装 Apache、PHP 和 MySQL,而不是作为 WAMP 发行版的一部分......

主要原因是有些人在使用 FTP 服务器、邮件服务器、JSP 服务器、DNS 服务器附带的“包括厨房水槽在内的所有东西”类型的 WAMP 发行版上有负面体验,在可升级性、安全性方面存在问题......这通常会把事情弄得一团糟。

归根结底,这些人宁愿以自己的方式安装和配置 Apache、PHP 和 MySQL。而其他人可能认为你会获得更多的经验,自己做这一切。

但并非所有 WAMP 都是这样,有些是经过深思熟虑的框架,以适当的方式处理安全性、可升级性和配置。

您可以测试大约一打左右的 WAMP,以查看它们如何相互叠加。我总是建议尝试- WampServerUniformServerWAMP,开发专业,并XAMPP来看看是否有一个适合您的需求,如果没有,要么建立自己的自定义WAMP安装/架构,或用LAMP环境去.

  • 我会更进一步说,如果一个人需要使用*任何* WAMP 风格的系统,因为他们没有使用组件的经验、技能和信心,那么这个人不应该把它放在互联网上. 任何形式的 WAMP 都适用于 Intranet,但不适用于 Internet。 (4认同)
  • 你的观点没有错,但我认为最安全、最有效的代码是你永远不必运行的代码,而最灵活的框架是*根本没有框架*所以你没有担心违反其他人的规则并阻止他们的安全性、可升级性或配置假设成真并破坏框架。这确实取决于进行部署的人员的要求和技能 - 如果它是面向 Internet 的系统,则框架不能替代了解如何自己正确配置所有组件。 (3认同)