X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=.docker%2Fnginx.conf;fp=.docker%2Fnginx.conf;h=e8754d9b478f85cbeb033756d2114759f1809d37;hb=35927142d7440f6a7c360e53b2beb3a6834835f0;hp=0000000000000000000000000000000000000000;hpb=febe760cb1f414d8f11a31d839bf750263ddfa9e;p=github%2Fshaarli%2FShaarli.git diff --git a/.docker/nginx.conf b/.docker/nginx.conf new file mode 100644 index 00000000..e8754d9b --- /dev/null +++ b/.docker/nginx.conf @@ -0,0 +1,72 @@ +user www-data www-data; +daemon off; +worker_processes 4; + +events { + worker_connections 768; +} + +http { + include mime.types; + default_type application/octet-stream; + keepalive_timeout 20; + + client_max_body_size 10m; + + index index.html index.php; + + server { + listen 80; + root /var/www/shaarli; + + access_log /var/log/nginx/shaarli.access.log; + error_log /var/log/nginx/shaarli.error.log; + + location ~ /\. { + # deny access to dotfiles + access_log off; + log_not_found off; + deny all; + } + + location ~ ~$ { + # deny access to temp editor files, e.g. "script.php~" + access_log off; + log_not_found off; + deny all; + } + + location ~* \.(?:ico|css|js|gif|jpe?g|png)$ { + # cache static assets + expires max; + add_header Pragma public; + add_header Cache-Control "public, must-revalidate, proxy-revalidate"; + } + + location = /favicon.ico { + # serve the Shaarli favicon from its custom location + alias /var/www/shaarli/images/favicon.ico; + } + + location / { + # Slim - rewrite URLs + try_files $uri /index.php$is_args$args; + } + + location ~ (index)\.php$ { + # Slim - split URL path into (script_filename, path_info) + try_files $uri =404; + fastcgi_split_path_info ^(.+\.php)(/.+)$; + + # filter and proxy PHP requests to PHP-FPM + fastcgi_pass unix:/var/run/php5-fpm.sock; + fastcgi_index index.php; + include fastcgi.conf; + } + + location ~ \.php$ { + # deny access to all other PHP scripts + deny all; + } + } +}