39 lines
1.2 KiB
Nginx Configuration File
39 lines
1.2 KiB
Nginx Configuration File
# /etc/nginx/nginx.conf
|
|
|
|
user root;
|
|
worker_processes 1;
|
|
daemon off;
|
|
error_log /dev/stdout info;
|
|
|
|
events {
|
|
}
|
|
|
|
http {
|
|
access_log /dev/stdout;
|
|
|
|
server {
|
|
listen 80 default_server;
|
|
listen [::]:80 default_server;
|
|
|
|
# Everything is a 404
|
|
location / {
|
|
# First attempt to serve request as file, then
|
|
# as directory, then fall back to displaying a 404.
|
|
try_files $uri $uri/ =404;
|
|
}
|
|
|
|
location ~ (/.*) {
|
|
client_max_body_size 0; # Git pushes can be massive, just to make sure nginx doesn't suddenly cut the connection add this.
|
|
auth_basic "Git Login"; # Whatever text will do.
|
|
auth_basic_user_file "/etc/htpasswd";
|
|
include /etc/nginx/fastcgi_params; # Include the default fastcgi configs
|
|
fastcgi_param SCRIPT_FILENAME /usr/libexec/git-core/git-http-backend; # Tells fastcgi to pass the request to the git http backend executable
|
|
fastcgi_param GIT_HTTP_EXPORT_ALL "";
|
|
fastcgi_param GIT_PROJECT_ROOT /git; # the location of all of your git repositories.
|
|
fastcgi_param REMOTE_USER $remote_user;
|
|
fastcgi_param PATH_INFO $1; # Takes the capture group from our location directive and gives git that.
|
|
fastcgi_pass unix:/var/run/fcgiwrap.socket; # Pass the request to fastcgi
|
|
}
|
|
}
|
|
}
|