我在 1GB 单核 VPS 上运行带有 Nginx 1.5.1 和 PHP-FPM (PHP 5.3.26) 的 Drupal 6,在 SSD 存储上有 3GB 的交换空间。我刚刚从共享主机切换到这个非托管 VPS,因为我的网站变得太重了,所以我仍在学习绳索。我有中等高的流量,我并没有真正密切监控它,但 Google Adsense 通常每天记录接近 30K 的页面浏览量。我通常有 50 到 80 个经过身份验证的用户登录,还有几百个匿名用户在任何给定时刻访问 Boost 静态 HTML 缓存。我最多配置了 10 个 PHP-FPM 子进程。我正在使用“按需”PHP-FPM 流程管理器。
我偶尔会遇到一个很难调试的错误,因为它似乎是随机的。在用户有意发布的大约 30 个帖子中,其中 1 个被复制。我是这样配置的,第一次点击后post按钮就被禁用了,所以不是双击的结果。事实上,当我发帖时,它甚至发生在我身上。双柱会在几秒钟内发生。我检查了日志文件,重复的帖子似乎总是对应于 nginx POST 错误:recv() failed (104: Connection reset by peer) while reading response header from upstream
。而这个事件似乎与 index.php 的执行超时错误和 PHP-FPM 工作进程的后续 SIGTERM 的 PHP-FPM 错误有关。
以下是nginx
访问和错误日志以及 PHP-FPM 错误日志:
nginx_acess.log
文件:
1.2.3.4 - - [02/Jul/2013:12:34:34 -0500] "POST …
Run Code Online (Sandbox Code Playgroud) 我目前正在研究适合我的 CentOS 网络服务器的最佳备份解决方案,我正在考虑使用 Tarsnap 或直接使用 Amazon S3。
我试图找出如何阻止黑客在最坏的情况下删除我的服务器内容和我的远程备份,因为他获得了对我的服务器的 root 访问权限,从而可以访问远程备份身份验证凭据。(我完全理解拥有强密码和/或仅执行基于密钥的 SSH 身份验证以及其他一般最佳实践安全性的重要性。但有时会发生一些事情,可能存在 Linux 漏洞或 VPS 级别的漏洞我的主人,或其他或多或少不受我控制的东西。)
我知道 Tarsnap 和 Amazon S3 都有只写用户权限,但问题是我还需要自动备份修剪/轮换。是否可以设置这些服务中的任何一个(或可能是其他一些服务)以禁止删除比 2 天新的备份代?这会给我两天的缓冲时间,让我注意到我被黑客入侵并防止黑客删除我最新的数据。
还是有其他想法?非常感谢!