0

Laravel アプリは JSTree を使用してファイルを表示しています。

http://localhost:8000の下のツリーを取得すると、正しいツリーが表示されます。

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

しかし、ngnix の Web サイトを開くと、場合によってはデータがありません。ajax 応答は正しいですが、JSTree はそれをレンダリングしません。

アイデアはありますか?

4

1 に答える 1

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" に置きました。

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

于 2016-04-12T06:49:54.450 に答える