Javascript POST/重定向引发“连接已重置”浏览器错误

Javascript POST/重定向引发“连接已重置”浏览器错误,javascript,php,forms,.htaccess,Javascript,Php,Forms,.htaccess,我正在为我们的客户建立一个一页的结账。此签出应包含凭证、装运和付款的所有表单。还可以编辑以前输入的值。除了一件事,一切都很顺利 我的页面由多个部分组成,包括: 证书 装运 付款 在每个包含中,我检查相关数据是否在会话中,如果在会话中,我将显示不同的视图。这里没什么特别的 例如: <?php if (is_array($_SESSION['credentials'])) { ... show filled in values ... } else { ... show f

我正在为我们的客户建立一个一页的结账。此签出应包含凭证、装运和付款的所有表单。还可以编辑以前输入的值。除了一件事,一切都很顺利

我的页面由多个部分组成,包括:

  • 证书
  • 装运
  • 付款
在每个包含中,我检查相关数据是否在会话中,如果在会话中,我将显示不同的视图。这里没什么特别的

例如:

<?php
if (is_array($_SESSION['credentials'])) {
    ... show filled in values ...
} else {
    ... show form ...
}
?>
index.php 进展
  • 我已经转储了会话变量,以查看会话中是否有奇怪的内容。(这里没什么奇怪的)
  • 我已经为firefox安装了一个
    篡改数据
    插件来检查
    POST
    数据。(这里也没什么奇怪的)
更新 我在代码中发现了一些上次检查所有内容时跳过的内容。然而,这可能与我的问题有关

<script type="text/javascript">    
         window.history.forward();
         function noBack() { 
              window.history.forward(); 
         }
    </script>
</head>
<body onload="noBack();" onpageshow="if (event.persisted) noBack();" onunload="">
action=“/checkout/payment/”
定义得好吗?我的意思是你可以尝试一个解析的url,我在
/
末尾看到一个可疑的斜杠,你也可以用
method=“POST”
定义表单方法,在index.php上你应该用
$\u POST[]
检索所有内容,如果这会影响连接被重置”

有时可能意味着php崩溃。如果看不到确切的文件,很难猜测是否会发生这种情况以及为什么会发生这种情况

确保检查错误日志,键入:php--info | grep error以查看它被记录到的文件(如果您在linux/unix上)

我猜是一次偶然的休息;在某个地方看到这个答案有一个可能的原因:


不过,您会在错误日志中找到一些这方面的痕迹。如果您能提供这一点,我可能会提供更多帮助。

我会检查您的建议。在处理具有某种防火墙的共享主机时,我遇到过一些“连接被重置”的情况。您是否启用了ModSecurity?是否需要很长时间才能重置连接?ie,可能的超时?@Xeli不,它实际上马上就出现了
<div class="left-column">
    <h1 class="title-left">Step 2 - Shipment</h1>
    <i>Select a shipment method</i>
    <form method="POST" action="/checkout/payment/">
        <input type="radio" value="0" name="shipmentmethod"> Collect<br />
        <input type="radio" value="1" name="shipmentmethod"> Deliver<br />
       <input type="submit" value="Go to Step 3" class="sexybutton sexysimple sexybestel pull-right" name="shipment">
    </form>
</div>
Options       +FollowSymLinks
RewriteEngine On
RewriteBase /

order allow,deny
allow from all
RewriteCond %{HTTP_HOST} ^tapijttegelhandel\.nl
RewriteRule ^(.*)$ http://www.tapijttegelhandel.nl/$1 [R=permanent,L]
AddDefaultCharset utf-8

RewriteRule ^checkout/               /index.php?mod=checkout&action=show [NC,L,QSA]
case 'checkout':
    $action = isset($_GET['action']) ? $_GET['action'] : '';
    switch ($action) {
        case 'completed':
            # ...
            break;

        case 'cancelled':
            # ...
            break;

        case 'credentials':
        case 'shipment':
        case 'payment':
        case 'edit':
        default:
            include $_SERVER['DOCUMENT_ROOT'].'checkout/show.php';
            break;
    }
    break;
<script type="text/javascript">    
         window.history.forward();
         function noBack() { 
              window.history.forward(); 
         }
    </script>
</head>
<body onload="noBack();" onpageshow="if (event.persisted) noBack();" onunload="">
/cart GET 200 OK
/checkout/credentials/ GET 304 OK
/checkout/credentials/ POST 304 OK
# edit
/checkout/credentials/ POST - Error 'Connection was reset'
# Refresh
/checkout/credentials/ POST 200 OK