一个 WooCommerce AJAX 调用总是在 5 秒后超时

问题描述 投票:0回答:1

我遇到了(对我来说)有点奇怪的情况,希望得到帮助。我什至不完全确定这是寻求帮助的正确论坛,所以如果有更好的地方,其他地方的指示会很棒。

我安装了 WooCommerce 的 WP,并且它已经运行了几年。在过去的一段时间(一个月? - 不太确定这是什么时候开始的),当客户将产品添加到购物车时,WooCommerce 购物车小部件尚未更新。

这可以在以下页面(https://adventuretaco.com/product/tacoma-to-tundra-hard-brake-line-kit/)上看到,作者:

  1. 打开浏览器开发者工具并切换到“网络”选项卡

  2. 单击“添加到购物车”按钮 编辑/更新:==> 页面按预期重新加载

  3. 观察右侧的“购物车”小部件,注意它没有更新

  4. 当页面重新加载并加载所有资源时,请观察浏览器开发工具,并查找对 https://adventuretaco.com/?wc-ajax=get_refreshed_fragments

    的请求
  5. 结果就是总是在正好5秒后被切断。 (或 5.01/5.02 秒)。

重现2:

  1. 打开浏览器开发者工具并切换到“网络”选项卡
  2. 浏览至https://adventuretaco.com/minimal
  3. 观看浏览器开发工具,并查找对 https://adventuretaco.com/?wc-ajax=get_refreshed_fragments
  4. 的请求

因为响应没有及时返回,所以购物车永远不会更新。但是,对该 URL 的直接请求(非 AJAX)确实会正确返回(超过 5 秒后)并包含正确的购物车数据。

为什么这个请求被切断?答案可能在浏览器开发工具数据中,但我没有看到它(或者不知道我在寻找什么)。

我不确定这是否重要,但后端是linux/nginx。

谢谢!

php ajax wordpress woocommerce
1个回答
0
投票

所以,我对此没有“真正”的答案,但如果其他人也有同样的问题并偶然发现我提出的这个问题,我的解决方案不是我所期望的,但超出了我的希望。

我从 Azure(在带有灵活 MySQL 的 Linux 上运行 Wordpress)迁移到 AWS(在其中运行 Lightsail WP 实例和 Lightsail MySQL 数据库)。

每月的成本大致相同 - 截至此答案,在 20 美元范围内 - 但天哪,AWS 平台所以 性能更高。

不仅是对厕所购物车的调用,而且我网站上的所有内容都快了几个数量级。几乎感觉我不需要缓存插件,尽管我继续使用一个,因为这显然是一个很好的做法。

迁移也很简单 - 只需使用 MySql Workbench 复制数据库,然后通过 FTP 获取 wp-content 目录。不到几个小时就启动并运行了,只需进行简单的 DNS 更改即可将域指向新的 IP。

希望这可以帮助任何其他考虑在 Azure 上实现性能的人。

© www.soinside.com 2019 - 2024. All rights reserved.