2017-01-30 7 views
1

私はCodeigniterで初めて手をかけていました。私はログインシステムを構築しようとしました。ここを見て:あなたは、ログインしようとするとhttp://www.henryspike.tk/udemy/Codeigniter:AJAXがコントローラーにアクセスできない:Access-Control-Allow-Origin

、コントローラにデータを送信するためにAJAXを使用することになったが、クロムは、エラーが表示されます。

XMLHttpRequest cannot load http://www.henryspike.tk/udemy/index.php/main/login . No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin ' http://henryspike.tk ' is therefore not allowed access. The response had HTTP status code 500.

私は問題のために検索し、見つかりましたそれはクロスドメインのものと関係があります。他のドメインのAJAXを使っていないと思っていたので、私は救済策を試しませんでした。コントローラとビュー/ jQueryは同じドメインに存在します。

私のドメインのサブフォルダ、つまりUdemyにCodeigniterがインストールされているため、何かありますか?私は、私のconfig.phpでhttp://www.henryspike.tk/udemyに正しくベースURLを編集したと述べたいと思います。

+0

ヘッダーを追加する場所を教えてください。どのファイルですか? –

+0

私たちが見たり推測したりすることができないように、問題の[最小、完全、および検証可能な例](http://stackoverflow.com/help/mcve)を含めてください。 –

+0

さて、http://www.henryspike.tk/udemyにアクセスして、電子メール/パスワードでログインしてみてください。コンソールを開いていることを確認してください。その後、ログインをクリックすると、AJAXはコントローラにデータを渡すことになっています。それはCORSエラーを返しません。 –

答えて

0

Set a header

相対URLを使用し、。それらが同じマシン/ホスト名にあることは重要ではありません。

1

wwwwwwは異なるサブドメインとみなされます。

はたぶん異なるポートに問題がある

+0

すべてのURLに 'www'を追加しました....私のすべてのURLは絶対的なものなので、問題ではありません –

+0

しかし、表示されているエラーは、あなたが 'www'ドメイン以外のページを開いていることを示しています。あなたのAJAXコード – charlietfl

+0

はルック$( "logBu​​tton")を取るを表示]をクリック(関数(){ $アヤックス({ 方法: "POST"、 URL:「http://www.henryspike.tkをデータ:{email:$( "#email")、パスワード:$( "#password")、val()}、 成功:機能(データ){ アラート(データ); }});偽 リターン; })。 –