您当前的位置:首页 > 计算机 > 软件应用 > 开发工具(IDE)

git 通过 httpd 配置 http 地址

时间:12-14来源:作者:点击数:

今天某个为某个项目建了个仓库,ssh 访问没问题,但是处于阿里云,只有内网ip,需要走代理,使得外网访问,所以需要配置 http,没考虑安全、性能等,本文使用 httpd,配置就为方便,有兴趣或有机会再试试 nginx 直接代理。

安装 git 和 httpd

[root@yg ~]# yum -y install git git-core httpd

初始化目标仓库

[git-test@yg ~]# git init --bare yg-git-repo

新建 git 密码认证文件,后面在 httpd 配置文件中会指定

[root@yg ~]# htpasswd -m -c /etc/httpd/conf.d/git-team.htpasswd yg1

再建一个用户,不带 -c,-c 是新建文件,前面已经建过了

[root@yg ~]# htpasswd -m /etc/httpd/conf.d/git-team.htpasswd yg2

查看 httpd 状态,端口使用默认 80,如被占用启动会报错,自己修改

[root@yg ~]# netstat -tlunp|grep httpd
[root@yg ~]# netstat -tlunp|grep 80

将密码文件和仓库属主改为 apache,注意额,不然后面不会成功额

[root@yg git-test]# chown apache:apache /etc/httpd/conf.d/git-team.htpasswd
[root@yg git-test]# chown apache:apache -R /home/git-test/

修改 httpd 配置文件,并启动 httpd 服务

[root@yg git-test]# vim /etc/httpd/conf/httpd.conf    # 到最后添加下面一段,注意 /home/git-test 和 /yg-git/
<VirtualHost *:80>
    ServerName git.cnblogs.com
    SetEnv GIT_HTTP_EXPORT_ALL
    SetEnv GIT_PROJECT_ROOT /home/git-test
    ScriptAlias /yg-git/ /usr/libexec/git-core/git-http-backend/
    <Location />
            AuthType Basic
            AuthName "Git"
            AuthUserFile /etc/httpd/conf.d/git-team.htpasswd
            Require valid-user
    </Location>
</VirtualHost>

启动 httpd 服务,这个报了信息,不算错,百度了一下,解决了好看

在 /etc/httpd/conf/httpd.conf 中的 Listen 80 下面添加下面一行即可解决:ServerName localhost:80

大功告成:测试一波,这里要注意标红的地方,在访问项目 url 的时候,使用脚本别名代理git项目根路劲,所以你可以自定义。

由于自己不是专职于运维,不太熟悉 git 和 Apache 服务器配合,对于安全等等其他都不了解,只是达到了想要的效果,为此做个小笔记,如果能帮到你就更好了。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐