笔记三、apache搭建gitweb【转】

参考文章:

http://www.latelee.org/using-gnu-linux/ubuntu-apache-gitweb.html

http://blog.csdn.net/caspiansea/article/details/41952139

http://tom-cjp.iteye.com/blog/1005081

ubuntu下安装软件十分简单。只需要apt-get install即可,不用自己下载源码,自己编译。这篇文章主要写一下web服务器的搭建,至于gitweb,其实很久以前已经搞了,那时为了更好地推广git而做的,不过至今效果甚少。但它与web服务器共同使用,因此在这里也一并写上。

apache

1、先查看80端口是否被占用
netstat
-nap | grep 80
有则停止程序,否则与apache冲突,比如,我的虚拟机先前已经有了boa,则要停止boa。

2、安装apache
sudo
apt-get install apache2
安装后,默认已经运行,并且开机自启动

重启命令:

/etc/init.d/apache2
restart

如果重启apache2有警告,如下:
Could
not reliably determine the server’s fully qualified domain name, using ::1. Set
the ‘ServerName’ directive globally to suppress this message
解决也简单,在/etc/apache2/apache2.conf文件最后添加
ServerName
localhost
(注:localhost名称为机上的名称,和/etc/hostname
一致)

安装完成后,还有些小事情要完善一下。

1、
改默认目录

以前老版本的apache2默认的目录是www,但新版本变成了/var/www/html,apache邮件列表上有关于这个修改的说明,在新版本的ubuntu和Fedora,都已经使用了新的默认目录。如果想要修改也简单,在/etc/apache2/sites-available/000-default.conf文件中,把
DocumentRoot
/var/www/html
改为
DocumentRoot
/var/www

2、改默认主页
一般地,默认主页是index.html文件,但有的场合下不是这个,这时就要修改了。

进入/etc/apache2目录,用下面的命令查找(又学习了一个查找的):
grep
-iR DirectoryIndex /etc/apache2
找到/etc/apache2/mods-enabled/dir.conf文件,在DirectoryIndex后面加上想要的默认主页名称即可,如下(最后一个是我自己加上的):
<IfModule
mod_dir.c>
DirectoryIndex
index.html index.cgi index.pl index.php index.xhtml index.htm
latelee_index.html
</IfModule>

至此,web服务器基本上可以说完成了。

apache2本身就记录有访问信息(我的网站不断受到垃圾消息干扰,和其斗争过程,分析过访问日志)。可以通过查看access.log来了解。

查看访问IP,并统计:
cat
/var/log/apaches/access.log | awk ‘{print $1}’ | sort -n | uniq -c | sort -n

查看IP及访问的页面:
cat
/var/log/apaches/access.log | awk ‘{print $1 $11}’

在工作中,我需要将自己做的事务共享出去,我就是用这些命令来看看有没有人来访问(万一哪天扯皮,我就有理由说:我都已经发出公告了,你们没看,怪谁呢?哈哈哈哈!)。

gitweb

1、安装gitweb
sudo
apt-get install gitweb

如果提示:
E:
Unable to fetch some archives, maybe run apt-get update or try with
–fix-missing?
则要执行命令sudo
apt-get update

2、设置gitweb属性

编辑/etc/gitweb.conf文件
项目路径(在开头处):
$projectroot
= “/home/git”;

在最后加上
$site_name
= “GitWeb @ LateLee-Server”;

#$site_name
= “192.168.1.254 @ Git”;      #gitweb首页标题栏
$feature{‘search’}{‘default’}
= [1];
$feature{‘blame’}{‘default’}
= [1];
#$feature{‘snapshot’}{‘default’}
= [‘tgz’,’tbz2′,’zip’];
#禁止Snapshot
$feature{‘snapshot’}{‘default’}
= [undef];

5、页面布局改善:

如果未生成/var/www/gitweb这个目录

ln -s  /usr/share/gitweb/ /var/www/gitweb

直接输入IP,再添加gitweb即可访问gitweb。

http://192.168.18.168/gitweb/

这样,就可以在浏览器上查看log和代码了。

上面所述环境为最新版的ubuntu,14.04。网上有些文章提到的配置已经不适合新版本了,故写了本文。

李迟,发表于2014年11月04日晚上

在Ubuntu 14.04上配置
gitweb

分类: Linux2014-12-16
02:25 1019人阅读 评论(0) 收藏 举报

1。先安装 gitweb和
apache2

2.
修改配置文件(因为gitweb在/etc/apache2/conf.d/下安装了配置文件,这个目录是过时的):

[plain] view plaincopyprint?

  1. sudo cp /etc/apache2/conf.d/gitweb /etc/apache2/conf-available/gitweb.conf
  2. cd /etc/apache2/conf-enabled
  3. sudo ln -s ../conf-available/gitweb.conf

修改gitweb.conf 如下:

[plain] view plaincopyprint?

  1. Alias /gitweb /usr/share/gitweb
  2. <Directory /usr/share/gitweb>
  3. Options +FollowSymLinks +ExecCGI
  4. AddHandler cgi-script .cgi
  5. </Directory>

(在 FollowSymLinks之前加上了 "+"解决语法问题)

3. 使能cgi:

[plain] view plaincopyprint?

  1. sudo a2enmod cgi  
  2. sudo service apache2 restart  

4.
修改/etc/gitweb.conf,添加上项目信息:

[plain] view plaincopyprint?

  1. $projectroot = "/home/charles/repo";
  2. $projects_list = $projectroot;

5.
创建项目信息.

把项目信息和实际代码分开。

[html] view plaincopyprint?

  1. mkdir repo
  2. cd repo/
  3. git clone  --bare ~/code/linux-3.10.28 linux-3.10.28

然后,打开 http://localhost/gitweb/ 
就能看到项目信息了。

6。因为 gitweb
的数据来源和实际的代码不在同一个地方,所以,需要经常更新 ~/repo。

这可以用一个脚本来实现:

[plain] view plaincopyprint?

  1. #!/bin/bash
  2. cd ${HOME}/code/linux-3.10.28
  3. git remote add web  /home/charles/repo/linux-3.10.28 >& /dev/null
  4. sudo git push -f web

如果有下面的警告,

[plain] view plaincopyprint?

  1. warning: push.default is unset; its implicit value is changing in
  2. Git 2.0 from ‘matching‘ to ‘simple‘. To squelch this message
  3. and maintain the current behavior after the default changes, use:
  4. git config --global push.default matching
  5. To squelch this message and adopt the new behavior now, use:
  6. git config --global push.default simple
  7. When push.default is set to ‘matching‘, git will push local branches
  8. to the remote branches that already exist with the same name.

执行 

[plain] view plaincopyprint?

  1. git config --global push.default matching

就行了。

可以自动化的来更新:

[plain] view plaincopyprint?

  1. crontab -l
  2. * * * * * ${HOME}/foo/git.web.push

更换gitweb.css和gitweb.js,
下载项目,并拷贝文件到 /usr/share/gitweb/ 即可

Java代码

  1. git clone https://github.com/kogakure/gitweb-theme.git

加入群组,具体看下一篇文章:

  服务器git

时间: 2024-12-14 09:11:02

笔记三、apache搭建gitweb【转】的相关文章

使用apache搭建站点

一.使用apache搭建站点 1.在配置文件中新增站点信息 2.运行httpd 3.在switchhosts中新增Hosts,方便切换hosts 4.浏览器输入域名访问 二.编译环境安装 1.在项目打包脚本wpbuilder目录下安装npm,安装成功生成node_modules文件 2.运行webpack 三.v游页面练习index.page2 1.div盒子默认撑开宽度,不需要设置宽度

lucene学习笔记(三)

好几天没更新了.更新一下,方便自己和大家学习. 这是最基本的代码 package index; import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.Map; import org.apache.lucene.analysis.standard.StandardAnalyzer; import org.apache.lucene.document.Document;

SpringMVC笔记——SSM框架搭建简单实例

落叶枫桥 博客园 首页 新随笔 联系 订阅 管理 SpringMVC笔记——SSM框架搭建简单实例 简介 Spring+SpringMVC+MyBatis框架(SSM)是比较热门的中小型企业级项目开发的框架,对于新手来说也是比较容易学习入门的.虽说容易,但在框架搭建过程中仍然遇到了许多问题,因此用实例记录下来吧. 实例 第一步——导包 Spring框架包及其依赖包 MyBatis框架包及其依赖包 MyBatis-EhCache架包 C3P0架包 MySql数据库驱动包 项目架包如下: 项目结构如

Linux下使用Apache搭建Web网站服务器

Linux下使用Apache搭建Web网站服务器 实验目标 apache服务器常见概念 apache服务器安装及相关配置文件 实战: 例1:为公司内网搭建一个web服务器 例2:取消apache默认欢迎页: 例3:使用rpm搭建lamp 环境 例4, 使用别名,引用网站根目录以外的路径. 例6:打开软链接功能. 通过软件链接直接引用网站根目录以外的内容 例5,当一个目录下没有默认首页时,访问http://192.168.1.63/phpmyadmin/禁止显示目录列表 例7:通过用户认证的方式,

windows环境下安装apache及使用apache搭建反向代理

一.配置Apache平台软件 1.下载apache软件 http://httpd.apache.org/ 从Apache官网下载windows安装版的Apache服务器了,现在分享给大家. 2.方法/步骤如下: 2.1.进入apache服务器官网http://httpd.apache.org/,这里我们以下载稳定版的httpd 2.2.29为例,点击download. 2.2.download.cgi页面,往下翻找到2.2.29版本,其中有两个下载选项 Source: httpd-2.2.29.

使用Apache搭建Web网站服务器

  使用Apache搭建Web网站服务器 一:实验目标 apache服务器常见概念 apache服务器安装及相关配置文件 例1:为公司内网搭建一个web服务器 例2:使用rpm搭建lamp 环境 例3:修改网根目录及对应参数,设置访问权限 例4,:使用别名,引用网站根目录以外的路径. 例5:打开软链接功能. 通过软件链接直接引用网站根目录以外的内容 例6:当一个目录下没有默认首页时,访问http://192.168.1.63/phpmyadmin/禁止显示目录列表 例7:通过用户认证的方式,对网

搭建Lamp架构之一,apache搭建。

一:实验要求1:学会编译安装httpd服务器2:熟悉httpd服务的部署过程及常见配置3:学会构建AWStats日志分析系统4:httpd服务的访问控制客户机的地址限制用户授权限制5:构建虚拟WEB主机基于域名的虚拟主机基于IP地址.端口的虚拟主机二:实验环境1.安装包apr-util-1.4.1.tarapr-1.4.6.tarhttpd-2.4.2.tar2.服务器Linux6.5yum仓库三:实验步骤 卸载原先的httpd服务yum remove httpd2.共享宿主机文件夹3.挂载共享

吉林快_三平台搭建项目实践教程

吉林快_三平台搭建是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来.它是为了解决企业应用开发的复杂性而创建的.Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情.然而,Spring的用途不仅限于服务器端的开发.从简单性.可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益

Caliburn.Micro学习笔记(三)----事件聚合IEventAggregator和 Ihandle&lt;T&gt;

Caliburn.Micro学习笔记(三)----事件聚合IEventAggregator和 Ihandle<T> 今天 说一下Caliburn.Micro的IEventAggregator和IHandle<T>分成两篇去讲这一篇写一个简单的例子 看一它的的实现和源码 下一篇用它们做一个多语言的demo 这两个是事件的订阅和广播,很强大,但用的时候要小心发生不必要的冲突. 先看一下它的实现思想 在Caliburn.Micro里EventAggregator要以单例的形式出现这样可以