1

这个页面

UPLOADS_DEFAULT_URL

如果您将服务器设置为从 UPLOADS_DEFAULT_DEST 提供服务,请在此处设置服务器的基本 URL。继续上面的示例,如果 /var/uploads 可以从 http://localhost:5001访问,那么您可以将其设置为 http://localhost:5001/并且照片集的 URL 将以 http://localhost 开头: 5001/张。包括尾部斜杠。

但是,您不必设置任何 _URL 设置 - 如果您不这样做,那么它们将由 Flask 内部提供。它们就在那里,因此如果您的上传流量很大,您可以使用更快的生产服务器(如 Nginx 或 Lighttpd)来提供上传服务。

我不明白 Flask 如何使用 UPLOADS_DEFAULT_URL。文本说,如果你不指定它,上传将由烧瓶内部提供。问题:

  1. 如果我不指定 url,flask 将在什么 url 上提供服务?
  2. 如果我确实指定了 URL,那么烧瓶将如何处理它?它将如何使用它?

所以更容易回答我的问题:我不知道 python 究竟是如何与 apache 或 nginx 等 Web 服务器交互的。我确实理解原则上您希望这些 Web 服务器在您的 python 应用程序前端/代理以实现可扩展性/负载,但我不知道如何完成此操作的确切细节。可能如果我知道这一点,上面的信息对我来说会更明显。

从实际的角度来看:我有别人的python/flask 应用程序,对 python 的经验并不多。上面的参数需要在配置文件中指定。我启动并运行了应用程序,我没有指定这个特定参数,上传工作正常。我想知道不指定 URL 可能会破坏什么。

4

1 回答 1

0

如果我不指定 url,flask 将在什么 url 上提供服务?

从文档中我了解到,如果您这样设置

UPLOADS_DEFAULT_DEST = '/var/uploads/'
UPLOADS_DEFAULT_URL = 'http://localhost:5000/'

然后,当您上传一组命名照片时,会将其上传的内容存储在/var/uploads/photos.Lets 假设它为/var/uploads/photos/test.jpg。然后烧瓶将图像作为

http://localhost:5000/photos/test.jpg.

如果我确实指定了 URL,那么烧瓶将如何处理它?它将如何使用它?

让如果

UPLOADED_PHOTOS_DEST = '/var/mypics/'
UPLOADED_PHOTOS_URL =  'http://localhost:5000/'

然后,当您上传一组命名照片时,会将其上传的内容存储在/var/mypics/.Lets 假设它为/var/mypics/test.jpg。然后烧瓶将图像作为

http://localhost:5000/test.jpg.

但是我们不会在production.in 生产图像中使用它,静态应该由nginxor提供apache

于 2015-07-23T07:01:37.083 回答