Skip to content

Instantly share code, notes, and snippets.

@ghostcode
Forked from uhop/nginx-webp-sample.conf
Created August 9, 2021 02:19
Show Gist options
  • Save ghostcode/fdac4d57e7371041f2fa7dd036654e29 to your computer and use it in GitHub Desktop.
Save ghostcode/fdac4d57e7371041f2fa7dd036654e29 to your computer and use it in GitHub Desktop.
Serving WEBP with nginx conditionally.
user www-data;
http {
##
# Basic Settings
##
sendfile on;
tcp_nopush on;
tcp_nodelay on;
# IMPORTANT!!! Make sure that mime.types below lists WebP like that:
# image/webp webp;
include /etc/nginx/mime.types;
default_type application/octet-stream;
gzip on;
gzip_disable "msie6";
##
# Conditional variables
##
map $http_accept $webp_suffix {
default "";
"~*webp" ".webp";
}
##
# Minimal server
##
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.html;
# Make site accessible from http://localhost/ or whatever you like
server_name localhost;
location ~* ^/images/.+\.(png|jpg)$ {
root /home/www-data;
add_header Vary Accept;
try_files $uri$webp_suffix $uri =404;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment