【问题标题】:HTTP Status 405 in MAMPMAMP 中的 HTTP 状态 405
【发布时间】:2013-10-08 09:31:04
【问题描述】:

我有一个本地版本的客户端站点,它在我的机器上使用 MAMP 运行 Wordpress 安装。该网站包含一个 PayPal 捐赠表格,该表格由另一位开发人员编写,但在客户设置 PayPal 帐户之前未完成。客户现在有了帐户,并聘请我将捐赠表格设为“实时”。显然,我想在切换开关以使其在他们的网站上生效之前对其进行测试。当我尝试将表单提交到我的 PayPal Sandbox 帐户进行测试时,浏览器会转到正确的 URL,但我在浏览器中收到以下错误消息:

HTTP 状态 405 - 不支持请求方法“POST”

根据 PayPal 的文档,表单的方法必须是“Post”。此外,我已经在安装 MAMP 时成功地测试了其他具有类似 PayPal 表单的站点。我的问题是:代码中是否有我没有发现的错误(正如我所说,我没有写这个),或者我需要在 MAMP 中更改服务器权限?如果是后者,我该如何更改 MAMP 中的服务器权限,因为我似乎在任何地方都找不到该选项。

这是提交给 PayPal 的代码:

                      <form method="post" action="https://www.sandbox.paypal.com">
                        <div id="small-button-container" class="">
                            <div id="twenty-five" class="lightred general_button blue_button form_small_button selected_amount select_state_color_btn"><span>25</span></div>
                            <div id="fifty" class="general_button blue_button form_small_button select_state_color_btn"><span>50</span></div>
                            <div id="one-hundred" class="general_button blue_button form_small_button select_state_color_btn"><span>100</span></div>
                            <div id="two-hundred" class="general_button blue_button form_small_button select_state_color_btn"><span>200</span></div>
                        </div>
                        <div id="other-amount" class="general_button blue_button form_other_amount">
                            <span><img src="<?php $root ?>/images/close.png"/>
                            </span>
                            <label>$</label><input class="whitetext" type="text" name="other-amount" value="143">
                        </div>
                        <div id="other-amount-button" class="general_button blue_button select_state_color_btn">
                            <span>OTHER</span>
                        </div>


                            <input type="hidden" name="LOGIN" value="(Sandbox Test Account Here)">
                            <input type="hidden" name="PARTNER" value="PayPal">
                            <input id="donation-amount" type="hidden" name="AMOUNT" value="0">
                            <input id="donation_description" type="hidden" name="DESCRIPTION" value="Tax deductible donation to (Client's Name Here) (Tax Identification Number: XXXX)">
                            <input type="hidden" name="TYPE" value="S">
                            <input class="general_button blue_button submit_button" id="submit" type="submit" value="Donate">
                      </form>

注意:此代码中还有很多其他内容,因为它设置为在提交之前计算选择的捐赠金额。

【问题讨论】:

  • 这个问题的答案是代码中有一个不完整的 URI。表单的完整操作应该是“sandbox.paypal.com/cgi-bin/webscr
  • 也许将此添加为答案并接受它?这样对其他人会更有用:)

标签: php wordpress paypal mamp


【解决方案1】:

事实证明,导致该问题的代码存在一些问题,但都没有涉及服务器配置。根据 PayPal 的文档,应该有的表单如下所示:

     <form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" target="_top">
            <input type="hidden" name="cmd" value="_s-xclick">
            <input type="hidden" name="hosted_button_id" value="(your PayPal key here)">
            <input type="image" src="https://www.sandbox.paypal.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
            <img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
     </form>

【讨论】:

    猜你喜欢
    • 2017-06-04
    • 2015-02-16
    • 2013-12-08
    • 2018-05-27
    • 2015-07-07
    • 2011-07-19
    • 2021-06-04
    • 1970-01-01
    • 2015-12-27
    相关资源
    最近更新 更多