Articles of 灯

使用Nginx或HA代理作为负载平衡器的优势

在我们的环境中,我们在不同的集群上使用Nginx和HA Proxy。 使用另一个的优点是什么? 或者,有关负载平衡基本LAMP服务器群集的最佳方法是什么?

Linode发行(如何select?)64bit?

我已经向Linode(360MB)迈进了一步,想要获得关于select哪个发行版的一些反馈。 我要运行LAMP(P是PHP)。 我主要关心安全性,性能,稳定性和未来的补丁。 我应该使用64位版本的操作系统还是有缺点? select… Arch Linux 2009.02 Arch Linux 2009.02 64bit CentOS 5.3 CentOS 5.3 64bit Debian 5.0 Debian 5.0 64bit Fedora 11 Gentoo 2008.0 Gentoo 2008.0 64bit OpenSUSE 11.0 Slackware 12.2 Ubuntu 8.04 LTS Ubuntu 8.04 LTS 64bit Ubuntu 9.10 Ubuntu 9.10 64bit 干杯

如何使用NameVirtualHosts在LAMP服务器上设置每个站点的php.ini文件?

我有一个LAMP服务器使用NameVirtualHosts服务于多个不同的网站。 直到最近有一个全球性的php.ini文件已经很好,但最近我们的开发人员已经请求了一些php.ini中的设置,我不想在全局设置。 我敢肯定,我听说你可以设置每个站点的 php.ini文件,但不知道如何去做这件事。 有人可以指出我在正确的方向如何做到这一点?

Ubuntu LAMP上的php.ini-development在哪里?

在我的开发机器上运行Ubuntu 10.04.1 LTS。 在官方文档之后 ,我使用下面的命令一次性安装Apache,MySQL和PHP : sudo tasksel install lamp-server 现在,我正在testing我的PHP脚本,我想要启用“开发人员模式”,如果有,启用错误报告和日志logging。 我已经阅读了文件php.ini-production和php.ini-development ,显然有一些版本的PHP 5,但不是我已经安装的。 我所有的是/etc/php5/apache2/php.ini 。 此configuration不会回应错误或警告,这使我的脚本很难debugging。 我想我可以手动编辑configuration,但是如果可能的话,我宁愿只是放下replace。 所以我正在寻找的是在PHP的开发和生产环境之间切换的简单方法!

安全的LAMP服务器供生产使用

什么是安全的Linux,Apache,MySQL,PHP服务器(甚至是Perl)的生产使用程序? 除了设置Linux的MySQL密码和root密码外,还应该采取哪些其他步骤(可能不那么明显)? 如果我要变得更偏执,那么我可以采取哪些措施? 这是一个基本的单一网站使用,但必须是安全的。

PhpMyAdmin(在ubuntu灯上):通过configuration禁止无密码login(请参阅AllowNoPassword)

我的mysql密码=''我尝试login到PhpMyAdmin(在Ubuntu 10.04灯),并得到错误: 没有密码login被禁止configuration(请参阅AllowNoPassword)我应该做什么进入phpMyAdmin没有设置密码? 谢谢

基于Apache名称的虚拟主机中的ServerName通配符?

在我们的局域网上,我在DNS服务器上设置了几个“假”顶级域名(TLD),目的是将它们用于基于Apache名称的虚拟主机。 我想在Ubuntu 10.04 LAMP服务器上将它与大容量虚拟主机(即VirtualDocumentRoot)结合起来。 但是,我不能得到它select正确的虚拟主机! 以下是Apacheconfiguration的摘要: NameVirtualHost 10.10.0.205 <VirtualHost 10.10.0.205> ServerName *.test VirtualDocumentRoot /var/www/%-3.0.%-2/test/%1/ CustomLog /var/log/apache2/access.log vhost_combined </VirtualHost> <VirtualHost 10.10.0.205> ServerName *.dev VirtualDocumentRoot /var/www/%-3.0.%-2/dev/%1/ CustomLog /var/log/apache2/access.log vhost_combined </VirtualHost> 诸如www.domain.com.dev这样的主机名正确地parsing为10.10.0.205,但是总是select顶部虚拟主机,而不是底部虚拟主机,这更密切地匹配。 我之前的印象是,Apache会首先尝试匹配ServerName,然后默认为给定IP的顶级虚拟主机。 我究竟做错了什么? 或者这是不可能的,我必须为每个TLD使用另一个IP? apachectl -S输出(修剪): 10.10.0.205:* is a NameVirtualHost default server *.test port * namevhost *.test port * namevhost *.dev

LAMP服务器性能技巧

什么性能提示可以提供给运行LAMP服务器的人? 在某些特定分发的情况下,我的目标是Debian。

改善我们的部署策略

我们有一个在我们公司开发的电子商务应用程序。 它是一个合理的标准的LAMP应用程序,我们已经开发了大约3年。 我们在testing领域开发应用程序,在这里我们添加新的function和修复错误等。我们的错误跟踪和function开发全部在托pipe的颠覆解决scheme(unfuddle.com)内进行pipe理。 当错误被报告时,我们在testing域上做了这些修复,然后当我们很高兴错误已经修复时,将修改提交给svn。 我们按照相同的程序添加新的function。 值得指出的是我们的服务器系统和应用程序的总体架构。 每次开发新function时,我们都会使用我们的应用程序(始终是我们控制的服务器)将此更新推出到所有站点。 使用我们的系统的每个站点实际上使用95%的代码库完全相同的文件。 我们在每个站点内有几个文件夹,其中包含定制到该站点的文件–css文件/图像等。除此之外,每个站点之间的差异由每个站点数据库中的各种configuration设置定义。 这将开始实际部署本身。 当我们准备推出某种更新时,我们会在testing站点所在的服务器上运行一个命令。 这将执行复制命令(cp -fru / testsite / / othersite /),并通过每个基于修改date更新文件的vhost force。 我们托pipe的每个附加服务器都有一个虚拟主机,用于同步生产代码库,然后我们在该服务器上的所有站点上重复复制过程。 在这个过程中,我们移出不想被覆盖的文件,在完成复制时将其移回。 我们的推出脚本执行一些其他function,如应用SQL命令来改变每个数据库,添加字段/新表等。 我们越来越担心我们的过程不够稳定,不容错过,也是一种暴力方法。 我们也意识到,我们并没有充分利用颠覆,因为我们有一个职位,即在不使用分支或标签的情况下,开发新function将阻止我们推出重要的错误修复。 这似乎也是错误的,我们有这么多的文件复制我们的服务器。 我们也无法轻松地对我们刚推出的产品进行回滚。 我们在每次推出之前都会执行diff操作,以便我们可以获得将要更改的文件列表,以便我们知道之后发生了什么变化,但是回滚过程仍然存在问题。 就数据库而言,我已经开始关注dbdeploy作为一个潜在的解决scheme。 但是,我们真正想要的是关于如何改进文件pipe理和部署的一般性指导。 理想情况下,我们希望文件pipe理更紧密地连接到我们的存储库,所以卷展/回滚将更多地连接到SVN。 就像使用导出命令来确保站点文件与回购文件一样。 如果解决scheme也可能会停止我们的服务器周围的文件复制,这也是一件好事。 忽视我们目前的方法,听听其他人如何解决同样的问题真的很好。 总结… 使多个服务器上的文件保持与svn同步的最佳方式是什么? 我们应该如何防止文件复制? 符号链接/别的东西? 我们应该如何构build我们的回购,以便开发新function并修复旧function? 我们应该如何触发推出/回滚? 提前致谢 编辑: 我最近读了很多关于使用Phing和Capistrano完成这些任务的好东西。 任何人都可以提供更多关于他们的信息,他们对于这样的任务有多好?

在英特尔selectAMD处理器时的注意事项

我为一家拥有大量传统LAMPnetworking应用程序的公司工作,在那里我们试图将我们的硬件从大约250台物理服务器刷新到大约40台带虚拟化的新服务器。 我们收到了两家厂商的报价,一家是AMD处理器,一家是AMD处理器。 有一件事我喜欢与AMD的核心关系,那就是我们将能够为虚拟机专门提供内核,这意味着我们的应用程序由于尖峰而相互干扰的可能性较低,这在一定程度上更多对我来说比最高性能重要。 我想到的其他考虑因素是: 功耗可能不同(在我们的情况下不是问题)。 像CRC32 (SSE 4.2)的CPU指令将不被支持(编辑:MySQL 5.6似乎支持SSE4.2。不确定Apache) 在16/32内核之后,MySQL不能很好地扩展(我愿意接受这种折衷)。 我还缺less什么其他的考虑? (请注意版主:我知道这个主题 – 我认为这个问题略有不同。) 编辑:假设任务是exception并行(Web服务器),并且我不关心数据库服务器不是如此平行。