1

I'm deploying a Django application that is based on a whole lot of static content. All of the computers using the application are on an intranet, with the static content available through nfs.

Can django be configured to let users get the static data through their nfs mounts, rather than forcing it all through a web server?

If I've got this in a template:

<img src="/path/to/img.png"/>

The browser is requesting that image from

http://localhost:8000/path/to/img.png

What I'm trying to do is get the client to treat that as a local path, rather than asking a server for it.

4

2 に答える 2

5

ファイル システム (NFS マウントまたはその他) 内のファイルを参照するには、使用する URI はfile:///path/to/file. ただし、それはあなたの場合には機能しません<a href="file:///path">-ローカルファイルシステムからロードされた静的HTMLファイルからのみ機能します。

セキュリティ上の理由から、Web ページはローカル ファイル システムにアクセスできません。<img src="C:/localfile.jpg"> を実行できない理由を参照してください。

静的ファイルへのアクセスを高速化したい場合、1 つのオプションは、静的ファイル (おそらくnginx ? またはlighttpd ? またはmongoose ?) のサービス専用の別の軽量 Web サーバーをセットアップし、そのサーバーの URL を次のように使用することです。あなたのMEDIA_URL

于 2012-08-01T21:16:48.797 に答える
0

まあ、試してみるべきです。django が静的コンテンツ パスを別の定数として扱っている場合、ネットワーク共有パスは問題なく機能するはずです。しかし、そうでない場合は、次のような独自の定数を定義してみてください。

于 2012-08-01T20:43:23.470 に答える