1

在我的django应用程序中,我有一个用于播放媒体文件( )的playmedia.html页面。作为第一步,我将媒体文件放在文件夹中并硬编码 src 属性html5 video elementvideo or mp3 audio/home/me/django/myapp/media/audio<video>

<video id="vid" width="640" height="360" controls="controls">
           <source src="{{MEDIA_URL}}audio/candle.mp3" type="audio/mp3" />       
</video>

设置文件有

MEDIA_ROOT = '/home/me/django/myapp/media'
MEDIA_URL = '/site_media/'

通过这种设置,当页面加载时,html5 video player页面中显示 mp3 文件已加载(在 chrome 中,显示一个蓝色条),我可以使用player.. 播放音频文件。我想选择一个 mp3 文件从local filesystem并制作它html5 video。我该怎么做呢?

假设我在目录中有一个 test.mp3/home/me/music/ 如果我设置了 src="/home/me/music/test.mp3" ,播放器在没有加载文件的情况下显示。这次没有蓝条。此外,服务器输出

[10/May/2012 08:38:48] "GET /home/me/music/test.mp3 HTTP/1.1" 404 2191

我认为这可能是因为 django 不知道路径/home/me/music/,因为它不在上下文中。

有人可以帮我弄清楚如何做到这一点吗?

4

1 回答 1

0

这根本不是关于 django,而是关于提供媒体文件的网络服务器(好吧,有时它可以是 django 的开发服务器)。所以你需要“告诉”网络服务器在哪里可以找到这些文件如何?取决于服务器。对于 django ,它在 urls中,对于大型服务器 - 在配置文件中。

此外,出于安全考虑,没有简单的方法可以说“请为我的整个本地文件系统提供服务器”。您的文件中有大量私人信息,外部用户根本不应该访问这些信息。

于 2012-05-10T06:50:28.747 回答