博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
centos 配置 nginx + fcgiwrap + git
阅读量:7207 次
发布时间:2019-06-29

本文共 2950 字,大约阅读时间需要 9 分钟。

hot3.png

1、编译安装fcgiwrap

git clone git://github.com/gnosek/fcgiwrap.gitcd fcgiwrapautoreconf -i./configuremakemake install

2、配置fcgiwrap开机脚本

vim /etc/init.d/fcgiwrap
#! /bin/sh# chkconfig: 2345 55 25DESC="fcgiwrap daemon"DEAMON=/usr/bin/spawn-fcgiPIDFILE=/var/run/spawn-fcgi.pidFCGI_SOCKET=/var/run/fcgiwrap.socketFCGI_PROGRAM=/usr/local/sbin/fcgiwrapFCGI_USER=wwwFCGI_GROUP=wwwFCGI_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  ;;esacexit 0

增加执行权限并开启

chmod +x fcgiwrapchkconfig fcgiwrap on

添加git的fastcgi配置

vim /path/to/nginx/conf/fastcgi_params_git
fastcgi_param  QUERY_STRING       $query_string;fastcgi_param  REQUEST_METHOD     $request_method;fastcgi_param  CONTENT_TYPE       $content_type;fastcgi_param  CONTENT_LENGTH     $content_length;fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;fastcgi_param  REQUEST_URI        $request_uri;fastcgi_param  DOCUMENT_URI       $document_uri;fastcgi_param  DOCUMENT_ROOT      $document_root;fastcgi_param  SERVER_PROTOCOL    $server_protocol;fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;fastcgi_param  REMOTE_ADDR        $remote_addr;fastcgi_param  REMOTE_PORT        $remote_port;fastcgi_param  SERVER_ADDR        $server_addr;fastcgi_param  SERVER_PORT        $server_port;fastcgi_param  SERVER_NAME        $server_name;fastcgi_param  REMOTE_USER        $remote_user;# required if PHP was built with --enable-force-cgi-redirectfastcgi_param  REDIRECT_STATUS    200;

添加git server的nginx配置

server { listen   80; server_name  mydevserver; access_log /var/log/nginx/dev.access.log; error_log /var/log/nginx/dev.error.log; location / {  root  /var/repos; } location ~ /git(/.*) {  gzip off;  root /usr/lib/git-core;  fastcgi_pass  unix:/var/run/fcgiwrap.socket;  include fastcgi_params_git;  fastcgi_param SCRIPT_FILENAME /usr/libexec/git-core/git-http-backend;  fastcgi_param DOCUMENT_ROOT /usr/libexec/git-core/;  fastcgi_param SCRIPT_NAME git-http-backend;  fastcgi_param GIT_HTTP_EXPORT_ALL "";  fastcgi_param GIT_PROJECT_ROOT /var/repos;  fastcgi_param PATH_INFO $1;  #fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; }}

注意 git-http-backend路径

附:

1、 Cannot access URL错误

error: Cannot access URL http://www.example.com/git/projects/example/, return code 22

仓库下:

git config http.receivepack true
  1. 安装编译fcgiwrap
configure: error: FastCGI library is missing

安装fcgi-devel

yum install fcgi-devel -y

转载于:https://my.oschina.net/dingdayu/blog/806113

你可能感兴趣的文章
我是如何学会爱上 Vim 的
查看>>
小tips:JS中typeof与instanceof用法
查看>>
阿里云Ecs挂载云盘
查看>>
《Kotlin项目实战开发》第1章 Kotlin是什么
查看>>
基于 react, redux 最佳实践构建的 2048
查看>>
云栖大会看技术人成长之路
查看>>
从零搭建React全家桶框架教程
查看>>
Windows command tools
查看>>
Webpack 最佳实践总结(一)
查看>>
【138天】尚学堂高淇Java300集视频精华笔记(84)
查看>>
docker与git实现push-to-deploy
查看>>
vue2.0 与 bootstrap datetimepicker的结合使用
查看>>
ant design后台模板-1.前端环境搭建
查看>>
什么是npm ?
查看>>
php 中continue break exit return 的区别
查看>>
敏捷爽畅模型及其演变——Diana Larsen专访
查看>>
Bootstrap 4 正式发布,却可能生不逢时
查看>>
PWA即将推向所有Chrome平台
查看>>
修复.NET的HttpClient
查看>>
服务应该去版本化,不管是微服务还是SOA
查看>>