2011-10-17 8 views
2

私は最近、サーバーをもっと良いサーバーにアップグレードしました。私はまだ1つの問題を抱えています、そして、私は困惑しています。私のページの1つでは、自分のサイトのPHPページにJQuery .get()を呼び出し、カレンダーにデータを取り込むためのデータを取得します。私はAJAX呼び出しを行うために使用する機能がある:私は私のサーバーに移動し、期待通りに動作し、適切な$ _GETパラメータと直接getBlackOutData.phpページにアクセスする前に私のサイトを新しいサーバーに移動しました。現在はJQuery .get()が返されません。

function getBlackoutData(packageNum, nights, arrivalDate) { 
if(!isRunning) { 
    isRunning = 1; 
    bodates.length = 0; 
    $.get("getBlackOutData.php", { 
     pkg: packageNum, 
     additional_nights: nights, 
     arrivalDate: arrivalDate 
     }, function(data) { 
     $.each(data.info, function(n,object) { 
      $.each(object, function(key,val) { 
       pkgInfo += key + '=' + val + '&'; 
       $('#' + key).text(val); 
      }); 
     }); 
     $.each(data.dates, function(key, value) { 
      bodates[key] = value; 
      var pickedDate= $("#Checkin").val(); 
      var pickedDateSplit = pickedDate.split("/"); 
      pickedDate = pickedDateSplit[2] + pickedDateSplit[0] + pickedDateSplit[1]; 
      if(value == pickedDate && $("#Checkin").val() != ""){ 
       alert("The date you have chosen is not available with your current package"); 
       $("#Checkin").val(''); 
      } 
     }); 
     if(bodates.length >= 120) { 
      $('#customer_info').html("<div class=\"packageError\">We're sorry, it appears that this package is not currently available. Please try another package or call 1-888-923-3378 for further avaliablity.</div>"); 
     } 
     $('#customer_info').show(); 
     $('#retail').html(data.retailNightPrice); 
     custPrice = $('#price').html(); 
     $('#discount').html(data.retailNightPrice - custPrice); 
    }, "json"); 
    isRunning = 0; 
} 
} 

この呼び出しはとてもうまくいきました。今すぐAJAXコールから予期した結果を得られないだけでなく、http応答コード(FireBugで表示)も取得できません。また、FirePHPを使用して、アクセスしようとしているPHPページからFireBugコンソールにデバッグデータを出力することができるので、実際にページに当たっていることがわかります。誰かがこれがJQueryエラーか、場合によってはサーバ自体の設定エラーであるかどうかを知っていますか?

+0

(サブ)ドメイン全体でリクエストしていますか?もしそれがクロスドメインセキュリティであれば、FirebugのコンソールにNS-somethingエラーがあるはずです。 – mqsoh

+0

すべてが同じドメイン/サブドメインにあります。同じフォルダでも:) –

答えて

1

あなたのModSecurityを変えます!明らかに、古いサーバーは、サイトのベースhrefがHTTPSであることに気付いていないようだが、その特定のページへのリンクはHTTPだけであった。これは明らかにAJAXリクエストの問題を引き起こしました。

0

新しいサーバーにmod_securityがありますか?リクエストをブロックしている可能性があります。

アクセス制御 - 許可 - 起源 "*" アクセス制御 - 許可 - メソッドは "GET、POST" アクセス制御 - 許可 - ヘッダ「X-を:

はおそらく変更する必要がありますプロトタイプバージョン、

「X-で、要求されたと潜在的な[OK]を、問題が解決whitelist.conf

関連する問題