【问题标题】:post and get conflict (.htaccess)发布和获取冲突 (.htaccess)
【发布时间】:2018-04-02 04:52:06
【问题描述】:

我目前遇到了一个有趣的问题。我用自己的方式从 GitHub 自动部署网站,但遇到了一个问题。 GitHub 通过 webhook 发送有效负载显然是作为 POST 请求。我有一个.htaccess,它为我编码了网址。这样它就变成了一个 GET 请求,不是吗?这是我.htaccess中的一行:

RewriteRule v1/(.*)$ index.php?request=$1 [QSA,NC,L]

我需要那里的变量...我继续在 PHP 中使用 GET 参数创建一个数组:

$url = explode("/", $_GET['request']);

在处理过程中,我还向 GitHubs API 发出了一些 GET 请求。

现在谈谈我不明白的想法。如果我运行 Webhook,我的文件不会上传。如果我自己打开网站,一切都会按原样更新。

也许有人知道原因以及如何解决它?

【问题讨论】:

  • “所以它被转换为一个 GET 请求,不是吗?” - 不,只有当它是一个 外部 重定向,这将使客户端完全发送一个新请求。只要只是内部重定向,就没有理由改变请求方法。
  • 为什么这会让代码取消? if ($_SERVER['REQUEST_METHOD'] !== "GET") return;@CBroe

标签: php .htaccess github webhooks


【解决方案1】:

我刚刚解决了我自己的问题。等了大约 5 分钟后,我再次执行了 Webhook,并且更改在 Webspace 上。所以可能 GitHub API 目前只是,或者它不会经常更新。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-09
    • 1970-01-01
    • 2021-07-02
    • 1970-01-01
    相关资源
    最近更新 更多