Rails アプリを開発モードで実行するために webrick を使用しています。このページには 4 ~ 5 個の JavaScript ファイルが含まれており、これらも同じ Webrick インスタンスによって提供されています。
ie6 でページを読み込むと、JavaScript ファイルが最初の数行で切り詰められているように見えます。誰か説明してもらえますか? たとえば、ページに次のスクリプト タグが含まれている場合:
<script type="text/javascript" src="http://myserver:3200/javascripts/jquery.js"></script>
ページが ie6 に読み込まれると、javascript 構文エラーが発生し、Visual Web Developer (VWD) を使用すると、読み込まれた jquery.js ファイルを開くことができます。最初の ~30 行しか表示されず、停止します。
ie6 を実行している同じマシンから、curl を使用して同じ jquery.js ファイルをロードしようとしました。
% curl --verbose "http://myserver:3200/javascripts/jquery.js"
* About to connect() to myserver port 3200 (#0)
* Trying xx.xx.xx.xx... connected
* Connected to myserver (xx.xx.xx.xx) port 3200 (#0)
> GET /javascripts/jquery.js HTTP/1.1
> User-Agent: curl/7.16.3 (i686-pc-cygwin) libcurl/7.16.3 OpenSSL/0.9.8j zlib/1.2.3 libssh2/0.15-CVS
> Host: myserver:3200
> Accept: */*
>
< HTTP/1.1 200 OK
< Connection: close
< Date: Thu, 14 May 2009 21:35:09 GMT
< Content-Length:
< Last-Modified: Wed, 13 May 2009 20:38:23 GMT
< Content-Type: application/javascript
<
* Closing connection #0
そのため、curl を介してページにアクセスすると、サーバーからコンテンツが返されません。wget と同じ。
ただし、ページ、またはFirefoxまたはChromeの個々のjavascriptファイルをロードすると、すべてが正常にロードされます。そのため、webrick と ie6 の間には、curl/wget と同じように奇妙な相互作用があります。私が試したもう1つのテスト:
% telnet myserver 3200
GET /javascripts/jquery.js HTTP/1.1
Accept: */*
HTTP/1.1 200 OK
Connection: close
Date: Thu, 14 May 2009 21:43:01 GMT
Content-Length:
Last-Modified: Wed, 13 May 2009 20:38:23 GMT
Content-Type: application/javascript
/*!
* jQuery JavaScript Library v1.3.2
....
それはうまくいき、完全なファイルの内容を返しました。なぜie6/curl/wgetで読み込まれないのか説明に困っています。助言がありますか?