首页 > 解决方案 > 服务器在一分钟内多次发布请求后没有响应

问题描述

问题是我有 GoDaddy 共享主机并部署了一个基于 PHP 构建的电子商务商店。现在,当 Web 服务在一分钟左右收到多个请求时,它会停止响应至少几分钟,只响应我的 IP 地址,而不是其他任何人。它的行为好像仅限于为有限数量的请求提供单个 IP。

下面是我测试它的方式,因为前端是在 Angular 7 上制作的,这并不重要。两种方式都返回相同的结果:

setInterval(function(){
  $.ajax({
      type: 'POST',
      url: '--webservice--',
      data: { test: 'test' },
      success: function(response){
        console.log(response);
      }
  })
}, 1000)

服务器端:

$input = $_POST['test'];
echo json_encode($input); die;

现在你可以看到我所做的是我创建了一个间隔,它每秒都会访问服务,只是为了检查有多少服务命中后,服务器停止响应。我得到的结果几乎每次都是这样:

你可以在这里看到结果

出于某种奇怪的原因,如果我将其转换为 GET 请求。即使我将时间间隔减少到 100 毫秒,它也能正常工作,它会在 10 秒或 15 秒内不断收到 200 多个请求的响应。POST 请求存在问题,而不是获取请求。

我还与托管服务提供商进行了长时间的讨论,他们说服务器配置正确,无论问题是什么,都与您的内容有关。

谁能告诉我发生了什么,我该如何解决这个问题?

我遇到了某人面临的类似问题,如果不准确的话,几乎是相同的问题:

在多次 POST 请求后,我没有收到来自服务器的数据

但问题是托管服务提供商没有向他保证,但我做到了,我对此并不满意。

标签: phpmysqlserverhosting

解决方案


我也有同样的问题。通过互联网搜索,我了解到 Godaddy 将阻止 IP 访问服务器,如果它每分钟收到超过 40 个 POST 请求。你一步也为我工作。


推荐阅读