shell 删除文件 四、服务器上的 Git(11)

电脑杂谈  发布时间:2018-02-11 20:23:18  来源:网络整理

Options ExecCGI Indexes

Order allow,deny

Allow from all

Require all granted

</Directory>

最后,如果想实现写操作授权验证,使用如下的未授权屏蔽配置即可:

<LocationMatch "^/git/.*/git-receive-pack$">

AuthType Basic

AuthName "Git Access"

AuthUserFile /opt/git/.htpasswd

Require valid-user

</LocationMatch>

这需要你创建一个包含所有合法用户密码的 .htaccess 文件。以下是一个添加 “schacon” 用户到此文件的例子:

$ htdigest -c /opt/git/.htpasswd "Git Access" schacon

你可以通过许多方式添加 Apache 授权用户,选择使用其中一种方式即可。以上仅仅只是我们可以找到的最简单的一个例子。

如果愿意的话,你也可以通过 SSL 运行它,以保证所有数据是在加密状态下进行传输的。

我们不想深入去讲解 Apache 配置文件,因为你可能会使用不同的 Web 服务器,或者可能有不同的授权需求。

它的主要原理是使用一个 Git 附带的,名为 git-http-backend 的 CGI。它被引用来处理协商通过 HTTP 发送和接收的数据。它本身并不包含任何授权功能,但是授权功能可以在 Web 服务器层引用它时被轻松实现。shell 删除文件你可以在任何所有可以处

理 CGI 的 Web 服务器上办到这点,所以随便挑一个你最熟悉的 Web 服务器试手吧。

NOTE

欲了解更多的有关配置 Apache 授权访问的信息,请通过以下链接浏览 Apache 文档:

7、GitWeb

如果你对项目有读写权限或只读权限,你可能需要建立起一个基于网页的简易查看器。Git 提供了一个叫做GitWeb 的 CGI 脚本来做这项工作。

技术分享图片

如果你想要查看 GitWeb 如何展示你的项目,并且在服务器上安装了轻量级网络服务器比如 lighttpd 或webrick, Git 提供了一个命令来让你启动一个临时的服务器。

在 Linux 系统的电脑上,lighttpd 通常已经安装了,所以你只需要在项目目录里执行 git instaweb 命令即可。

如果你使用 Mac 系统, Mac OS X Leopard系统已经预安装了 Ruby,所以 webrick 或许是你最好的选择。

如果不想使用 lighttpd 启动 instaweb 命令,你需要在执行时加入 --httpd 参数。

$ git instaweb --httpd=webrick

[2009-02-21 10:02:21] INFO WEBrick 1.3.1

[2009-02-21 10:02:21] INFO ruby 1.8.6 (2008-03-03) [universal-darwin9.0]

这个命令启动了一个 1234 端口的 HTTP 服务器,并且自动打开了浏览器。这对你来说十分方便。

当你已经完成了工作并想关闭这个服务器,你可以执行同一个命令,并加上 --stop 选项:

$ git instaweb --httpd=webrick --stop

如果你现在想为你的团队或你托管的开源项目持续的运行这个页面,你需要通过普通的 Web 服务器来设置 CGI脚本。


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/sanxing/article-72418-11.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...