You need to set up nginx as a reverse proxy for Plex first and then in your configuration file you put those rules at the top of the location / { } directive using an include statement pointing to the file. Insert my bitrate code in the file shown with the directive “include /etc/nginx/conf.d/plex_force_bitrate.include;”.
Here is my config file:
upstream plexserver {
server IP-OF-YOUR-PLEX-SERVER:32400;
keepalive 32;
}
server {
server_name DOMAIN-OF-YOUR-PLEX-SERVER.COM;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
location / {
include /etc/nginx/conf.d/plex_force_bitrate.include;
send_timeout 100m;
gzip on;
gzip_vary on;
gzip_min_length 1000;
gzip_proxied any;
gzip_types text/plain text/css text/xml application/xml text/javascript application/x-javascript image/svg+xml;
gzip_disable "MSIE [1-6]\.";
client_max_body_size 500M;
proxy_set_header Host $host;
proxy_set_header Referer $server_addr;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Plex-Client-Identifier $http_x_plex_client_identifier;
proxy_set_header X-Plex-Device $http_x_plex_device;
proxy_set_header X-Plex-Device-Name $http_x_plex_device_name;
proxy_set_header X-Plex-Platform $http_x_plex_platform;
proxy_set_header X-Plex-Platform-Version $http_x_plex_platform_version;
proxy_set_header X-Plex-Product $http_x_plex_product;
proxy_set_header X-Plex-Token $http_x_plex_token;
proxy_set_header X-Plex-Version $http_x_plex_version;
proxy_set_header X-Plex-Nocache $http_x_plex_nocache;
proxy_set_header X-Plex-Provides $http_x_plex_provides;
proxy_set_header X-Plex-Device-Vendor $http_x_plex_device_vendor;
proxy_set_header X-Plex-Model $http_x_plex_model;
proxy_set_header Sec-WebSocket-Extensions $http_sec_websocket_extensions;
proxy_set_header Sec-WebSocket-Key $http_sec_websocket_key;
proxy_set_header Sec-WebSocket-Version $http_sec_websocket_version;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_http_version 1.1;
proxy_redirect off;
proxy_buffering off;
proxy_pass https://plexserver;
}
location /tautulli/ {
proxy_pass https://IP-OF-TAUTULLI:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Ssl on;
proxy_read_timeout 90;
}
ssl_stapling on;
ssl_stapling_verify on;
listen 443 http2;
# listen [::]:443;
ssl_certificate /etc/letsencrypt/live/LETSENCRYPTDOMAIN/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/LETSENCRYPTDOMAIN/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}