1

私はpython SimpleHTTPServerを実行していて、htmlファイルを提供しています。その html ファイルには、いくつかの JavaScript ファイルが含まれています。html ファイルがサーバーによって提供されると、次のエラーが発生します。

1.0.0.127.in-addr.arpa - - [15/Jun/2012 13:42:54] code 404, message File not found
1.0.0.127.in-addr.arpa - - [15/Jun/2012 13:42:54] "GET /lib/jquery-ui/jquery-ui.min.js 

HTML ファイルの内容 (関連する行のみを表示):

<script type="text/javascript" src="../../lib/jquery-ui/jquery-ui.min.js"></script>

サーバーの実行に使用される Python コマンド。index.htmlが存在するディレクトリで実行されます

python -m SimpleHTTPServer 8000

ローカル ファイル システムに jquery-ui-min.js ファイルがあります。しかし、検索はどういうわけか../..を取り除き、/lib/jquery-ui/jquery-ui.min.jsで検索しています

4

1 に答える 1

0

ディレクトリから SimpleHTTPServer を実行する場合、実行元のルート ディレクトリの上には移動しません。これはセキュリティ機能です。

たとえば、次のレイアウトを想定します。

/foo/bar/baz/index.html
/foo/lib/jquery-ui/jquery-ui.min.js

から SimpleHTTPServer を実行する/foo/bar/bazと、上記のファイルにアクセスできなくなります/foo/bar/baz。代わりにサーバーを実行することができ/foo/、それは機能します。含める JavaScript までの baz ディレクトリにシンボリック リンクを追加することもできます。

于 2012-06-15T21:26:24.240 に答える