-server_name remorque.heureux-cyclage.org;
+server_name
+ remorque.heureux-cyclage.org
+ ra.heureux-cyclage.org;
+auth_basic "pour demander un compte: admin@heureux-cyclage.org";
+auth_basic_user_file /home/www/data/lhc-remorque/.htpasswd;
client_body_buffer_size 8k;
client_max_body_size 10m;
+error_page 404 /cgi/ikiwiki.cgi?do=create&page=$uri;
+
+location ~ ^/gitweb/static/.+\.(css|png|js)$ {
+ root /usr/share/;
+ access_log off;
+ expires 30d;
+ log_not_found off;
+ }
+location ~ ^/gitweb($|/) {
+ root /usr/share/gitweb;
+ fastcgi_param SCRIPT_FILENAME /usr/share/gitweb/gitweb.cgi;
+ include /etc/nginx/conf.d/fastcgi.conf;
+ set $no_cache "0";
+ if ($request_method !~ ^(GET|HEAD)$) {
+ # NOTE: if non GET/HEAD, don't cache and mark user as uncacheable for 1 second via cookie.
+ set $no_cache "1";
+ }
+ if ($no_cache = "1") {
+ # NOTE: drop no cache cookie if need be (for some reason, add_header fails if included in prior if-block).
+ add_header Set-Cookie "_mcnc=1; Max-Age=2; Path=/";
+ add_header X-Microcachable "0";
+ }
+ if ($http_cookie ~* "_mcnc") {
+ # NOTE: bypass cache if no-cache cookie is set.
+ set $no_cache "1";
+ }
+ fastcgi_cache_bypass $no_cache;
+ fastcgi_cache_use_stale updating;
+ fastcgi_cache_valid 200 10s;
+ fastcgi_cache_valid 404 30m;
+ fastcgi_ignore_headers Cache-Control Expires Set-Cookie;
+ fastcgi_no_cache $no_cache;
+ fastcgi_param GITWEB_CONFIG /etc/gitweb/lhc-remorque.conf;
+ fastcgi_param PATH_INFO $uri;
+
+ fastcgi_pass_header Cookie;
+ fastcgi_pass_header Set-Cookie;
+ fastcgi_split_path_info ^(.+\.cgi)(/.+)$;
+
+ fastcgi_pass unix:/run/spawn-fcgi/gitweb;
+ }
+
location / {
- try_files $uri $uri/index.xhtml = 404;
+ index index.xhtml;
}
-location ~* ^.+.(css|gif|html|ico|jpeg|js|jpg|png|txt|xml)$ {
+location ~* ^.+\.(css|gif|html|ico|jpeg|js|jpg|png|txt|xml)$ {
access_log off;
expires 30d;
log_not_found off;