Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F7892641
pleroma-mediaproxy.nginx
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
3 KB
Referenced Files
None
Subscribers
None
pleroma-mediaproxy.nginx
View Options
# This file is for those who want to serve uploaded media and media proxy over
# another domain. This is STRONGLY RECOMMENDED.
# This is meant to be used ALONG WITH `pleroma.nginx`.
# If this is a new instance, replace the `location ~ ^/(media|proxy)` section in
# `pleroma.nginx` with the following to completely disable access to media from the main domain:
# location ~ ^/(media|proxy) {
# return 404;
# }
#
# If you are configuring an existing instance to use another domain
# for media, you will want to keep redirecting all existing local media to the new domain
# so already-uploaded media will not break.
# Replace the `location ~ ^/(media|proxy)` section in `pleroma.nginx` with the following:
#
# location /media {
# return 301 https://some.other.domain$request_uri;
# }
#
# location /proxy {
# return 404;
# }
server
{
server_name
some.other.domain
;
listen
80
;
listen
[::]:80
;
# Uncomment this if you need to use the 'webroot' method with certbot. Make sure
# that the directory exists and that it is accessible by the webserver. If you followed
# the guide, you already ran 'mkdir -p /var/lib/letsencrypt' to create the folder.
# You may need to load this file with the ssl server block commented out, run certbot
# to get the certificate, and then uncomment it.
#
# location ~ /\.well-known/acme-challenge {
# root /var/lib/letsencrypt/;
# }
location
/
{
return
301
https://
$server_name$request_uri
;
}
}
server
{
server_name
some.other.domain
;
listen
443
ssl
http2
;
listen
[::]:443
ssl
http2
;
ssl_session_timeout
1d
;
ssl_session_cache
shared:MozSSL:10m
;
# about 40000 sessions
ssl_session_tickets
off
;
ssl_trusted_certificate
/etc/letsencrypt/live/some.other.domain/chain.pem
;
ssl_certificate
/etc/letsencrypt/live/some.other.domain/fullchain.pem
;
ssl_certificate_key
/etc/letsencrypt/live/some.other.domain/privkey.pem
;
ssl_protocols
TLSv1.2
TLSv1.3
;
ssl_ciphers
"ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4"
;
ssl_prefer_server_ciphers
off
;
# In case of an old server with an OpenSSL version of 1.0.2 or below,
# leave only prime256v1 or comment out the following line.
ssl_ecdh_curve
X25519:prime256v1:secp384r1:secp521r1
;
ssl_stapling
on
;
ssl_stapling_verify
on
;
gzip_vary
on
;
gzip_proxied
any
;
gzip_comp_level
6
;
gzip_buffers
16
8k
;
gzip_http_version
1
.1
;
gzip_types
text/plain
text/css
application/json
application/javascript
text/xml
application/xml
application/xml+rss
text/javascript
application/activity+json
application/atom+xml
;
# the nginx default is 1m, not enough for large media uploads
client_max_body_size
16m
;
ignore_invalid_headers
off
;
proxy_http_version
1
.1
;
proxy_set_header
Upgrade
$http_upgrade
;
proxy_set_header
Connection
"upgrade"
;
proxy_set_header
Host
$http_host
;
proxy_set_header
X-Forwarded-For
$proxy_add_x_forwarded_for
;
location
/
{
return
404
;
}
location
~
^/(media|proxy)
{
proxy_cache
pleroma_media_cache
;
slice
1m
;
proxy_cache_key
$host$uri$is_args$args$slice_range
;
proxy_set_header
Range
$slice_range
;
proxy_cache_valid
200
206
301
304
1h
;
proxy_cache_lock
on
;
proxy_ignore_client_abort
on
;
proxy_buffering
on
;
chunked_transfer_encoding
on
;
proxy_pass
http://phoenix
;
}
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Oct 2, 4:33 AM (1 d, 2 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
479829
Default Alt Text
pleroma-mediaproxy.nginx (3 KB)
Attached To
Mode
rPUBE pleroma-upstream
Attached
Detach File
Event Timeline
Log In to Comment