为WordPress站点配置服务器的最佳实践是什么?

时间:2010-11-30 作者:Adam

我雇了一个系统管理员为我设置了一个VPS服务器,不幸的是,看起来好像设置不正确。在尝试安装和更新插件时,我总是遇到权限错误。WP超级缓存是主要问题,因为它会导致我的读卡器出现502个错误。目前,我的网站没有加载分页(没有第2页、第3页等)。

12/1 Update: apache服务器今天已经多次重启,在我向主机提供商提出请求后的3个小时内,我所得到的只是他们正在监视它。自从他们开始监控后,它也重新启动了。。。

设置服务器的系统管理员提到,为了使其在DSO模式下正常工作,wp admin、wp content和wp plugins文件夹需要更改为777权限。唯一的问题是,我今天仍然无法在这些设置下进行3.0.2升级(这次是504超时nginx错误),因此出于许多原因,我仍然担心以这种方式运行它。

有人告诉我,如果我在PHP模式下运行(是这样吗?),我将通过查询等占用更多RAM,而在DSO模式下,我的使用率已经达到了60%。这对我来说没有任何意义,因为我的博客运行有点慢,但在共享主机上没有任何停机时间,仍然可以。我现在使用的是一个声誉很好的VPS,内存为512MB,我的网站每天只有10-12k的浏览量。

主持人说他们调整了配置以优化ram,所以我认为没有任何设置错误。仍在试图弄清楚这里发生了什么。

正在开发。。。。。

4 个回复
最合适的回答,由SO网友:Vid Luther 整理而成

这是一个非常复杂的问题,我会尽我最大的努力,记住现在是凌晨4点,所以我只是给你重点介绍,而不是详细的解释。

Linux I\'m assuming you\'re using a recent version of Ubuntu

<将默认SSH端口从22更改为其他端口(/etc/SSH/sshd\\u config)
  • 在sshd\\u配置中启用AllowGroup或AllowUser,
  • 安装fail2ban(apt get Install fail2ban)
  • 安装apache2、php5和mysql服务器
  • 编辑/etc/apache2/conf.d/security。conf并对生产服务器进行适当的更改
  • 禁用MySQL中的慢速查询日志(您不希望在生产中使用此日志,尤其是在VPS上)
  • 配置您的系统时区(dpkg重新配置tzdata)
  • 确保您的php。ini反映相同的时区,在/etc/apache2/sites中添加一个新的虚拟主机可用/(保留默认主机),通过以下方式启用此虚拟主机:启用mod rewrite(a2enmod rewrite)
  • 重新启动apache2/etc/init。d/apache2重启你也可以做一些其他的事情,比如安装Shorewall或UFW以更好地管理防火墙,安装Nginx作为apache的反向代理,调整查询缓存,但这实际上取决于一系列其他事情,在生产模式下几天后你应该调整mysql设置。

    SO网友:Denis de Bernardy

    冒着无法回答这个问题的风险(Vid做得很好),我建议您切换到提供为您进行系统管理(通常免费)的VPS主机。

    我在想http://hub.org 明确地Marc(运行它的人,也是PostgreSQL的四位创始人之一)是我见过的最好的系统管理员。

    在我写这篇文章时,Hub的控制面板(不是CPanel)正在重做;它的优点是只提供最终用户应该担心的内容。其余的,本质上,取决于打开一张支持票并要求处理。(当然,你可以做任何你想做的事情,如果你知道如何绕过外壳的话……)

    哦,还有。。。我应该提到的是,Marc是那种真正深入您的脚本并指出错误的人,如果他怀疑这是触发服务器问题的原因。我知道没有其他主持人会这么做。。。

    SO网友:kei1aeh5quahQu4U

    一些想法:

    我不喜欢WP超级缓存,因为它不能真正解决动态页面生成速度慢的问题。

    如果您只有wordpress专用服务器,我不会做出任何妥协:

    nginx+php-fpm(您还可以将Apache与fcgid和suexec一起使用(这也解决了大多数权限问题)

    安装APC操作码缓存

    使用apc缓存后端:http://wordpress.org/extend/plugins/apc/

    为页面缓存安装Batchache,它将使用apc后端。。如果您使用的是MyISAM表或innodb\\u buffer\\u pool\\u大小,请配置MySQL查询缓存并查看key\\u buffer值。如果您的博客有很多评论/更新,请考虑使用InnoDB作为存储引擎。

    在大量使用的VPS上,我有大约150ms的动态页面生成时间(以前没有缓存),如果Batchache提供页面,则只有1ms。因此,您可以使用“正常”VPS提供高达200-300req/s的服务。

    SO网友:Chris_O

    在尝试安装和更新插件时,我总是遇到权限错误

    这是将PHP作为DSO或mod\\u PHP运行时的常见问题。运行此设置时,WordPress文件必须由运行PHP的同一用户所有。通常情况下,对于Debian/Ubuntu的www数据来说,它将是无人的。

    要修复整个WordPress目录,请从命令行运行以下命令:

    $ chown nobody:nobody blog/ -R

    如果WordPress安装在您的根公共目录中,那么它将是:

    $ chown nobody:nobody public_html/ -R

    您可以将文件权限设置为644,将目录设置为755

    结束

    相关推荐

    WordPress 3.0.1 on IIS 6 Web Server PermaLink Issues

    最近,我无意中发现了这个博客“用WordPress在IIS6上使用IIRF URL重写”(http://john-sheehan.com/blog/using-iirf-url-rewriting-on-iis6-with-wordpress/ ) 我在Mac OS X上开发了一个运行MAMP的WordPress站点,然后将该站点移植到MS IIS6 Windows 2003服务器环境中。转到主页一切正常,但我的所有其他页面都找不到-404。我的网站是用WordPress 3.0.1中的PermaLink