服务器的tmp目录填满了吗?

时间:2012-05-14 08:45:34

标签: php apache web tmp

今天我的网站出现了一些问题:php文件上传无法正常处理,并且没有一个乘客wsgi python脚本正在执行。我联系了我的webhost,他们说服务器的tmp目录已达到“磁盘空间不足”并且他们修复了问题。

同样的事情在几分钟后开始发生,他们同样回答说问题现在已经解决了。

此后我没有遇到任何问题,但我很担心这将是一个持续的事情。他们发给我了:

  

我们遗憾的是无法保证问题会再次发生   因为新用户可能滥用/ tmp但我们通常会解决这些问题   从我们的身上发现它们的10或15分钟内的问题   监控系统。

我正在共享托管,所以这并非完全出乎意料,但它仍然令人不安。在这种情况下我能做些什么吗?有什么方法我至少可以知道它什么时候会发生 - 也许用tmp检查tmp中的已用空间以及允许的总空间?

这不是我和他们一起遇到的第一个问题,我现在只使用它们约2周,所以我正在考虑45退款保证并找到另一个主机。但是,我没有找到一个好的php / python主机,它支持M2Crypto和我使用的其他Python模块,或者允许我自己安装它们。我应该坚持使用它们还是跳船并找到另一个网络主机?

3 个答案:

答案 0 :(得分:2)

简单的一个:如果您的主机允许这样做,请让您的PHP脚本使用upload_tmp_dir自定义tmp目录进行上传。

这样,它只取决于您的托管空间!

答案 1 :(得分:1)

PHP具有disk_free_space功能,可用于监控/ tmp。但是,这不应该是必需的。主人有责任一劳永逸地解决这个问题。

我自己在共享的网络托管公司担任系统管理员,我知道解决这些类型的问题至关重要。完整的临时目录将有效地关闭服务器上的几乎所有网站,因此找到解决方案应该符合他们的最佳利益,否则客户将离开。你应该告诉他们他们有什么计划来解决这个问题。如果您得到一个愚蠢的无知答案,请求将问题升级为技术人员,以便您可以与负责人交谈(或发送电子邮件)。不要让他们把这个问题放在一边,但需要一个长期的解决方案,否则再次发生。

如果您无法找到符合您需求的共享主机,请尝试使用专用虚拟主机(VPS)。这样做的缺点是你必须是自己的系统管理员,但至少你得到了你需要的软件。

答案 2 :(得分:0)

您可以尝试将upload_tmp_dir等设置为个人区域内的位置,而不是全局/ tmp。但是,这需要访问php.ini文件。您可能没有的访问权限。此外,如果您无法访问webroot上方的任何内容,则不应该这样做(并且您应该立即离开主机 - 将内容放在webroot上面是必不可少的。)

简而言之,如果这个问题仍然存在,我会离开主持人。除了将您的业务带到其他地方之外,您无能为力。

我避免了这种情况的共享托管。这些天你可以以相当便宜的价格获得稳定,资源充足的VPS(当然这会带来一系列问题,特别是如果你要托管少量网站的话)。