2016-04-11 9 views
0

LaravelアプリはJSTreeを使ってファイルを表示しています。ngnixのJSTreeバグ

私がhttp://localhost:8000の下のツリーを取得する場合、私は正しいツリーを受け取ります。

プロキシの背後からウェブサイトにアクセスするためのngnixリバースプロキシ設定があります。

しかし、私がngnixのWebサイトを開くと、データがないことがあります。 Ajaxレスポンスは正しいですが、JSTreeはそれをレンダリングしません。

アイデアはありますか?

+0

これはjstreeのバグではないかと疑います。これはクライアントサイドのlibであり、データの受信方法とは関係ありません。 レスポンスのサンプル(すべてのヘッダーとともに)と、コンソールにある可能性のあるエラーを提供してください。 '$("#jstree ").jstree(true).last_error()が何を報告するかを調べるのにも役立ちます。 – vakata

答えて

0

まず、jstree()。​​last_error()関数を試しました。空のオブジェクトです。ここで

は私のヘッダです、私はそれが役に立てば幸い:

Host: DOMAIN.de 
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:45.0)  Gecko/20100101 Firefox/45.0 
Accept: */* 
Accept-Language: en-US,en;q=0.5 
Accept-Encoding: gzip, deflate 
Content-Type: application/x-www-form-urlencoded; charset=UTF-8 
X-Requested-With: XMLHttpRequest 
Referer: http://DOMAIN.de/explorer/show/443 
Content-Length: 6 
Cookie:  cartalyst_sentinel=eyJpdiI6I...iJ9; laravel_session=eyJp...J9 
Connection: keep-alive 
Pragma: no-cache 
Cache-Control: no-cache 

応答:

Cache-Control: private, must-revalidate 
Connection: keep-alive 
Content-Encoding: gzip 
Content-Type: text/html; charset=UTF-8 
Date: Tue, 12 Apr 2016 06:37:12 GMT 
Expires: -1 
Host: DOMAIN.de 
Pragma: no-cache 
Server: nginx/1.4.6 (Ubuntu) 
Set-Cookie:  laravel_session=eyJpdi......3D; expires=Tue, 12-Apr-2016 08:37:35 GMT; Max-Age=7200; path=/; httponly 
Transfer-Encoding: chunked 
X-Powered-By: PHP/5.6.19 

PHPヘッダー:

header('Content-Type: application/json; charset=utf-8'); 

問題がngnix応答で、あります別のContent-Typeを持っています。 ngnix "application/json"を "text/html"に置きます。

これを変更するオプションはありますか?