diff options
author | Mitya Selivanov <automainint@guattari.tech> | 2025-02-22 17:07:12 +0100 |
---|---|---|
committer | Mitya Selivanov <automainint@guattari.tech> | 2025-02-22 17:07:12 +0100 |
commit | 0242504a0eecb3543f47d6d6c4ef3e38ee322534 (patch) | |
tree | 3099a836891396fc5b3e1ed532e86778de2b13c7 /site.conf | |
parent | e3603be3dce9faa55c3d0785563b22b19adaf651 (diff) | |
download | cgi-dev.zip |
Diffstat (limited to 'site.conf')
-rw-r--r-- | site.conf | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/site.conf b/site.conf new file mode 100644 index 0000000..e4cda3c --- /dev/null +++ b/site.conf @@ -0,0 +1,68 @@ +server { + listen 80; + listen [::]:80; + + server_name _; + + location ~ ^/git_write/ { + rewrite ^/git_write/(.*) /\$1 break; + + auth_basic "Git"; + auth_basic_user_file $GIT_HOME.htpasswd; + + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $GIT_HTTP_BACKEND; + fastcgi_param GIT_PROJECT_ROOT $GIT_HOME; + fastcgi_param PATH_INFO \$uri; + fastcgi_pass unix:/var/run/fcgiwrap.socket; + } + + location ~ ^/git_read/ { + rewrite ^/git_read/(.*) /\$1 break; + + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $GIT_HTTP_BACKEND; + fastcgi_param GIT_PROJECT_ROOT $GIT_HOME; + fastcgi_param PATH_INFO \$uri; + fastcgi_pass unix:/var/run/fcgiwrap.socket; + } + + location ~ \\.git { + if (\$arg_service = git-receive-pack) { + rewrite /(.*) /git_write/\$1 last; + } + if (\$uri ~ ^/.*/git-receive-pack\$) { + rewrite /(.*) /git_write/\$1 last; + } + if (\$arg_service = git-upload-pack) { + rewrite /(.*) /git_read/\$1 last; + } + if (\$uri ~ ^/.*/git-upload-pack\$) { + rewrite /(.*) /git_read/\$1 last; + } + } + + location ^~ /git/ { + rewrite ^/git/(.*) /\$1 break; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $CGIT_CGI; + fastcgi_param PATH_INFO \$uri; + fastcgi_param QUERY_STRING \$args; + fastcgi_pass unix:/var/run/fcgiwrap.socket; + } + + location ~* \\.(txt|asc|htm|css|svg|jpg|png|gif|ico|woff|woff2|js|wasm|mp3)\$ { + rewrite ^/(.*) /static/plain/\$1 break; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $CGIT_CGI; + fastcgi_param PATH_INFO \$uri; + fastcgi_param QUERY_STRING \$args; + fastcgi_pass unix:/var/run/fcgiwrap.socket; + } + + location / { + include /etc/nginx/fastcgi_params; + fastcgi_param SCRIPT_FILENAME /srv/main.cgi; + fastcgi_pass unix:/var/run/fcgiwrap.socket; + } +} |