fix multiple issues from user exports config changes

- improve nginx config
- fix DATA_UPLOAD_MAX_MEMORY_SIZE default not being an int
- translate fallback value in id_to_username template tag
- make location of setting to turn on user exports easier to locate for admins

fixes #3227
fixes #3231
fixes #3232
fixes #3236
This commit is contained in:
Hugh Rundle 2024-01-20 13:19:13 +11:00
parent fd0b1d90b0
commit ddc35a7a52
No known key found for this signature in database
GPG key ID: A7E35779918253F9
6 changed files with 35 additions and 11 deletions

View file

@ -137,6 +137,7 @@ TWO_FACTOR_LOGIN_MAX_SECONDS=60
# and AWS_S3_CUSTOM_DOMAIN (if used) are added by default. # and AWS_S3_CUSTOM_DOMAIN (if used) are added by default.
# Value should be a comma-separated list of host names. # Value should be a comma-separated list of host names.
CSP_ADDITIONAL_HOSTS= CSP_ADDITIONAL_HOSTS=
# The last number here means "megabytes"
# Increase if users are having trouble uploading BookWyrm export files. # Increase if users are having trouble uploading BookWyrm export files.
DATA_UPLOAD_MAX_MEMORY_SIZE = (1024**2 * 100) # Default value is 2.5MB, this value is 100MB
DATA_UPLOAD_MAX_MEMORY_SIZE=104857600

View file

@ -443,4 +443,4 @@ if HTTP_X_FORWARDED_PROTO:
# user with the same username - in which case you should change it! # user with the same username - in which case you should change it!
INSTANCE_ACTOR_USERNAME = "bookwyrm.instance.actor" INSTANCE_ACTOR_USERNAME = "bookwyrm.instance.actor"
DATA_UPLOAD_MAX_MEMORY_SIZE = env.int("DATA_UPLOAD_MAX_MEMORY_SIZE", (1024**2 * 100)) DATA_UPLOAD_MAX_MEMORY_SIZE = env.int("DATA_UPLOAD_MAX_MEMORY_SIZE", 104857600)

View file

@ -49,6 +49,13 @@
{% if not site.user_exports_enabled %} {% if not site.user_exports_enabled %}
<p class="notification is-danger"> <p class="notification is-danger">
{% trans "New user exports are currently disabled." %} {% trans "New user exports are currently disabled." %}
{% if perms.bookwyrm.edit_instance_settings %}
{% spaceless %}
{% blocktrans%}
<br/>User exports settings can be changed from <a href="/settings/imports">the Imports page</a> in the Admin dashboard.
{% endblocktrans %}
{% endspaceless %}
{% endif%}
</p> </p>
{% elif next_available %} {% elif next_available %}
<p class="notification is-warning"> <p class="notification is-warning">

View file

@ -126,7 +126,7 @@ def id_to_username(user_id):
value = f"{name}@{domain}" value = f"{name}@{domain}"
return value return value
return "a new user account" return _("a new user account")
@register.filter(name="get_file_size") @register.filter(name="get_file_size")

View file

@ -61,17 +61,25 @@ server {
proxy_pass http://web; proxy_pass http://web;
} }
# directly serve images and static files from the # directly serve static files from the
# bookwyrm filesystem using sendfile. # bookwyrm filesystem using sendfile.
# make the logs quieter by not reporting these requests # make the logs quieter by not reporting these requests
location ~ \.(bmp|ico|jpg|jpeg|png|svg|tif|tiff|ttf|webp|css|js)$ { location ~ ^/static/ {
root /app; root /app;
try_files $uri =404; try_files $uri =404;
add_header X-Cache-Status STATIC; add_header X-Cache-Status STATIC;
access_log off; access_log off;
} }
# block access to any non-image files from images or static # same with image files not in static folder
location ~ \.(bmp|ico|jpg|jpeg|png|svg|tif|tiff|webp)$ {
root /app;
try_files $uri =404;
add_header X-Cache-Status STATIC;
access_log off;
}
# block access to any non-image files from images
location ~ ^/images/ { location ~ ^/images/ {
return 403; return 403;
} }

View file

@ -93,19 +93,27 @@ server {
# proxy_pass http://web; # proxy_pass http://web;
# } # }
# #
# # directly serve images and static files from the # # directly serve static files from the
# # bookwyrm filesystem using sendfile. # # bookwyrm filesystem using sendfile.
# # make the logs quieter by not reporting these requests # # make the logs quieter by not reporting these requests
# location ~ \.(bmp|ico|jpg|jpeg|png|svg|tif|tiff|ttf|webp|css|js)$ { # location ~ ^/static/ {
# root /app; # root /app;
# try_files $uri =404; # try_files $uri =404;
# add_header X-Cache-Status STATIC; # add_header X-Cache-Status STATIC;
# access_log off; # access_log off;
# } # }
# # block access to any non-image files from images or static # # same with image files not in static folder
# location ~ \.(bmp|ico|jpg|jpeg|png|svg|tif|tiff|webp)$ {
# root /app;
# try_files $uri =404;
# add_header X-Cache-Status STATIC;
# access_log off;
# }
# # block access to any non-image files from images
# location ~ ^/images/ { # location ~ ^/images/ {
# return 403; # return 403;
# } # }
# #
# # monitor the celery queues with flower, no caching enabled # # monitor the celery queues with flower, no caching enabled