展开目录
git配置服务端支持http认证
githttp认证
X
陈尼玛的博客
记录开发生涯的踩坑经历,用时间来验证成长
加载中

默认的nginx和fcgiwrap启动用户都是www-data,而我本地文件管理都是root建立的,因此需要把这两个的启动用户都改成root,这样做在生产环境是不安全的,本地随便搞

fcgiwrap 的配置文件有两处,第一处是/etc/init.d/fcgiwrap,还有一处要看 service fcgiwrap status里面展示的文件路径,修改之后需要systemctl daemon-reload


1. 安装软件:

apt-get install -y nginx apache2-utils fcgiwrap
  1. nginx
  2. apache工具,用于生成http连接的密码
  3. fcgiwrap,用于身份验证之后提供git连接

2. 生成http的帐号密码

touch /cwg_wd/run/nginx-git-passwd
htpasswd /cwg_wd/run/nginx-git-passwd cwg

3. 配置nginx,这一段需要查看加在nginx配置文件的server段

    location ~ /git-repo(/.*) {
        auth_basic "Restricted";
        # 认证的用户文件
        auth_basic_user_file /cwg_wd/run/nginx-git-passwd;

        # FastCGI 参数
        fastcgi_pass  unix:/var/run/fcgiwrap.socket;
        fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend;
        fastcgi_param GIT_HTTP_EXPORT_ALL "";
        # git 库在服务器上的根目录
        fastcgi_param GIT_PROJECT_ROOT    /cwg_wd/git-repo;
        fastcgi_param PATH_INFO           $1;
        # 将认证用户信息传递给 fastcgi 程序
        fastcgi_param REMOTE_USER $remote_user;
        # 包涵默认的 fastcgi 参数;
        include       fastcgi_params;
        # 将允许客户端 post 的最大值调整为 100 兆
        client_max_body_size 100M;
    }

4. 重启nginx服务

nginx -s reload

5. 测试

git clone http://192.168.1.4/git-repo/xx.git

相关文档

暂无

随便看看

  1. 定长消息队列读写优化

  2. css多行文本超出截断显示省略号

  3. mac ssh透过代理连接

  4. raw.githubusercontent.com DNS被指向127.0.0.1

  5. nodejs socks5

  6. 树莓派实现用pi用户自动登录

  7. git删除远程分支

  8. html5 全屏代码

  9. npm设置仓库地址和代理

  10. 模拟307跳转情况

  11. 单页应用的单向数据流的流程图

  12. 树莓派配置wifi热点

  13. webpack使用外部资源

  14. 把树莓派的存储空间拓展到整张TF卡中

  15. python下载文件,带进度条控制

  16. mysql导出csv文件

  17. mysql选取内容导出到文件

畅言模块加载中