为什么我的上传限制是100MB?它设置为500MB

我在 app.yml 中修改了 500MB
然后重新构建
再次设置在这里 /admin/site_settings/category/files
但你不能设置超过 100MB。


无论我如何设置,如果我上传超过 100MB,它都会报错。实际上并没有超过 500MB,但它仍然警告我说文件太大。

我认为 Discourse 中硬编码的最大图像尺寸为 102400kb(100M)是设计使然。app.yml 中的 upload_size 是用于配置 nginx 的,您可能需要配置 max attachment size kb 设置,该设置允许文件大小最大为 1024000kb(1GB)。

直接在网页上渲染 500MB 的图像文件非常糟糕。

2 个赞

我正在上传一些视频以保存在 s3 中。不是图片。

所以您应该更改 max attachment size kb 设置,而不是 max image size kb

2 个赞

我已尝试将其更改为最大限制,但仍无法上传 MP4 文件,并且一直提示我已超出 200MB 文件的最大限制。

这就是我阅读以进行更改的帖子。


我已经将图片限制设置为4M,其他附件大小设置为400MB,但无法上传200M的mp4。我正在使用Oracle云的ARM服务器。

我使用的是 Docker 版本,未做任何修改。

我以为我必须在 Docker 镜像内部执行此操作(但那已经是很久以前的事了,我不完全记得了)。

Discourse 不再使用 PHP 了吗?

你是否在更改该设置后进行了重新构建?

每次都重建
. /launcher rebuild app

我正试图清理并重建它。
./launcher cleanup

我曾一度怀疑是不是有什么缓存机制在起作用,导致重建不会改变上传文件的大小。我花了三天时间尝试了我能找到的一切。但附件大小仍然是 100m,我最初并没有将其设置为 100m,而是设置为 500m,因为我有一些视频想要能够上传。

您的网站设置中是否显示为 500MB?

是的,网页显示文件超过了 500MB 的限制。该文件实际上是 101MB。


实际的视频文件只有 101MB

我正在使用 Oracle Cloud 的 ARM 托管。

您能指导我如何解决这类问题吗?

Discourse 从未是基于 php 的产品。

1 个赞

我也认为 Discourse 没有使用 php 环境。但问题是 Discourse 设置了 500mb 的上传限制。但实际上无法上传超过 100mb 的文件。

我怀疑问题出在论述系统的逻辑上。尽管我在“app.yml”中更改了“upload_size”参数,允许上传高达 500MB 的文件,但图片上传限制仍被限制在 102400kb,相当于只有 100MB。
我现在正在上传一个 101MB 的视频,它甚至无法上传,会提示文件超过 500MB 的限制。


您是否看到了“必须在 nginx(client_max_body_size)/ apache 或代理中进行配置。”这条注释并采取了相应措施?

cd /var/discourse/
./launcher enter app
cd /etc/nginx/conf.d/
cat discourse.conf
nginx -s reload