1. 安装Fastcgiwrap
yum install fcgi-devel spawn-fcgi git clone git://github.com/gnosek/fcgiwrap.git cd fcgiwrap autoreconf -i ./configure make make install
vi /etc/init.d/fcgiwrap
#! /bin/sh # chkconfig: 2345 55 25 DESC="fcgiwrap daemon" DEAMON=/usr/bin/spawn-fcgi PIDFILE=/var/run/spawn-fcgi.pid FCGI_SOCKET=/var/run/fcgiwrap.socket FCGI_PROGRAM=/usr/local/sbin/fcgiwrap FCGI_USER=www FCGI_GROUP=www FCGI_EXTRA_OPTIONS="-M 0770" OPTIONS="-u $FCGI_USER -g $FCGI_GROUP -s $FCGI_SOCKET -S $FCGI_EXTRA_OPTIONS -F 1 -P $PIDFILE -- $FCGI_PROGRAM" do_start() { $DEAMON $OPTIONS || echo -n "$DESC already running" } do_stop() { kill -INT `cat $PIDFILE` || echo -n "$DESC not running" } case "$1" in start) echo -n "Starting $DESC: $NAME" do_start echo "." ;; stop) echo -n "Stopping $DESC: $NAME" do_stop echo "." ;; restart) echo -n "Restarting $DESC: $NAME" do_stop do_start echo "." ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2 exit 3 ;; esac exit 0
start fcgiwrap
nginx.conf
location ~ /git(/.*) { auth_basic "Restricted"; fastcgi_pass unix:/var/run/fcgiwrap.socket; auth_basic_user_file /etc/nginx.passwd; include fastcgi_params; fastcgi_param SCRIPT_FILENAME /usr/libexec/git-core/git-http-backend; fastcgi_param GIT_PROJECT_ROOT /var/git-repos; fastcgi_param GIT_HTTP_EXPORT_ALL true; fastcgi_param PATH_INFO $1; fastcgi_param REMOTE_USER $remote_user;
cd /var/git-repos git init --bare my-project.git htpasswd -c /etc/nginx.passwd user1
restart nginx
git clone https://www.xiaohui.org/git/my-project.git
http://qiita.com/egnr-in-6matroom/items/2a052339ee0515b31fdf