在Windows上运行php的优点和缺点是什么?

时间:2010-01-27 07:09:34

标签: php lamp wamp

linux环境对php来说很自然,

在Windows上运行php的优点和缺点是什么?

Windows中有一些限制吗?

在性能方面最好的(灯/湿)?

感谢

9 个答案:

答案 0 :(得分:4)

并不是说它在Linux上很自然,但开发人员倾向于在早期使用PHP作为Linux上的ASP。多年来,MS从未提及PHP并且从未给予任何支持,因此大多数开发工作都发生在Linux领域,结果是它更先进,因为它只花费了更多的开发时间。

同样在早期,让ISS在ISS上运行更加困难,但apache使它更容易,但是你需要安装它。我很少在Windows上开发,但我认为环境随着更多集成而变得更好。

XAMPP和WAMPP等软件包的出现使得安装和运行变得更加容易,但正如Karsten所说的那样,生产环境并不是因为它们在性能方面,特别是在安全级别方面不适合它,因为这也是怀疑它们是否适合性能,它们适合于易于安装和开发。

答案 1 :(得分:4)

如果您在Windows中开发并稍后迁移到Linux,则区分大小写可能会出现问题。

答案 2 :(得分:2)

嗯,尝试在Windows平台上编译PECL扩展存在明显的问题,以及与没有运行sendmail并尝试使用mail函数相关的问题。

除此之外,只要源已正确移植,它应该可以正常工作。

答案 3 :(得分:2)

Microsoft提供了一个针对此http://php.iis.net/

的网站

为了获得良好的效果,请查看http://www.iis.net/expand/fastcgi

答案 4 :(得分:1)

我不能给你性能统计数据。从这个角度来看,可以猜测Linux或BSD的最佳版本是最好的。

Windows有两个主要缺点。一个是你可能需要自己构建一些较少使用的扩展,如果你需要它们。 (有常见的东西的Windows版本 - APC等 - 虽然在网上可用32位。对于64位Windows ......好吧,那里是一个丛林。)另一个是你是将成为少数,所以期待所有与之相关的事情。 (例如,如果遇到配置困难,可能会有更少的人能够帮助您。)

优点是(特别是如果您喜欢的IDE类似于Visual Studio),您可以在机器上运行所有您喜欢的Windows内容。如果这是一个开发盒,这实际上只是一个优势 - 你将用于其他目的,而不仅仅是作为服务器。

答案 5 :(得分:1)

如果您在Windows环境中工作,运行您的应用程序/ php脚本,如果您想在本地调试,那将非常有意义。

我不会将WAMP用于生产环境,因为它的性质在linux imho中。

XAMPP通过安装水银邮件解决了amphetamachine正在讨论的sendmail问题。 它还带有预构建的xdebug,apc和memcache模块,这些模块对我来说是常用的pecl编译扩展。

答案 6 :(得分:1)

在Windows / Apache上,PHP的一个明显问题是not being able to为当前版本的PHP配置PHP APC。因此,无法使用进度条创建elegant file uploads

答案 7 :(得分:1)

PHP平台上存在许多怪癖,我不建议在LAMP / BAMP / SAMP和WAMP / WIMP之间切换。

首先,权限完全不同 - >通常在Unix / Linux中使用起来要困难得多(因为就我所见,Windows似乎并不关心权限)。在我看来,这是一件好事,(我相对安全偏执)。

以下是一些不同的内容:

http://php.net/touch(无法更改windows目录修改次数,直到5.3)
http://php.net/flush(某些win32机器仍然无法flushob_flush

两者都有系统特定的问题,这些问题最近刚刚制定出来,或者尚未修复......

答案 8 :(得分:1)

大多数和主要的PHP开发人员(我的意思是,创建该语言的人)似乎在Unix平台下工作。此外,几乎所有的Linux发行版都负责构建,打包和修复PHP以适应他们的系统。这也适用于像Apache这样的辅助软件。结果:

  • 总有一些功能无法在Windows上运行,例如strptime()或者有更多错误。
  • Windows二进制文件未针对您的系统进行优化。除非你自己编译,否则你甚至无法获得64位二进制文​​件。
  • MSI安装程序并不像它们应该的那样完美。
  • 安装PECL扩展非常复杂,因为没有官方DLL。

当然,PHP中还有Windows专用功能,例如Windows only extensionsMicrosoft SQL Server Driver for PHP等第三方扩展,或者在Windows下更容易使用的功能,例如{{3 }}

谈论绩效本身,很难做出公平的比较。操作系统本身具有非常不同的硬件要求,将优化的Unix构建与通用Windows二进制文件进行比较会产生误导。我的直觉说,选择任一平台的决定应基于其他考虑因素,例如预算,所需功能或易于维护。