参考文章:
 

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日晚上

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

1。先安装 gitweb和
apache2

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

  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 如下:

  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:

  1. sudo a2enmod cgi  
  2. sudo service apache2 restart  

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

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

5.
创建项目信息.

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

  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。

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

  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

如果有下面的警告,

  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.

执行 

  1. git config --global push.default matching

就行了。

可以自动化的来更新:

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

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

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

 
加入群组,具体看下一篇文章:
  服务器git
 

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

  1. [读书笔记] 三、搭建基于Spring boot的JavaWeb项目

    一.POM <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3. ...

  2. Apache搭建多个站点

    如何用Apache搭建的网站系统上运行多个站点呢?最平常的大概有3种方法. 第一种:单IP不同端口 第二种:多IP同端口(独立IP的虚拟空间) 第三种:域名绑定根目录的方式(共享IP的虚拟空间) 下面 ...

  3. Docker学习笔记之一,搭建一个JAVA Tomcat运行环境

    Docker学习笔记之一,搭建一个JAVA Tomcat运行环境 前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序 ...

  4. 《Apache Kafka 实战》读书笔记-认识Apache Kafka

    <Apache Kafka 实战>读书笔记-认识Apache Kafka 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.kafka概要设计 kafka在设计初衷就是 ...

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

    落叶枫桥 博客园 首页 新随笔 联系 订阅 管理 SpringMVC笔记——SSM框架搭建简单实例 简介 Spring+SpringMVC+MyBatis框架(SSM)是比较热门的中小型企业级项目开发 ...

  6. 三节点搭建openstack-Mitaka版本

    前言: 现在的云计算平台已经非常火,也非常的稳定了.像阿里云平台,百度云平台等等,今天咱们基于openstack来搭建一个云平台 注意: 本次平台搭建为三节点搭建(没有外部存储节点,所有存储为本地存储 ...

  7. 在linux下使用Apache搭建文件服务器

    目录 一.关于文件服务器 二.使用Apache搭建文件服务器 三.测试文件服务器是否可用 一.关于文件服务器 ​ 在一个项目中,如果想把公共软件或者资料共享给项目组成员,可以搭建一个简易的文件服务器来 ...

  8. ZooKeeper学习笔记三:使用ZooKeeper实现一个简单的配置中心

    作者:Grey 原文地址:ZooKeeper学习笔记三:使用ZooKeeper实现一个简单的配置中心 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 很多程序往 ...

  9. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

随机推荐

  1. [转载]关于android SDK安装Failed to fetch URL http://dl-ssl.google.com/android/repository/addons_list-1.xml出错

    原文地址为:http://blog.csdn.net/springsky_/article/details/7442388 因为入行移动测试,所以很多测试环境的搭建.从中遇到了和这个GG同样的问题.怕 ...

  2. python-操作mssql数据库

    准备工作: cmd 命令行下安装pymssql: pip install pymssql 查询的数据库如下: 代码如下: #coding=utf-8 import pymssql class MSSQ ...

  3. boost之bind

    bind1st bind2nd在stl里面有具体的实现,只是只能绑定两个参数. boost里面的bind使用bind(Fun f,A1 a1,A2,a2...)产生一个对象,这个对象可以有占位符,可以 ...

  4. 设计模式之组合模式(Composite)

    组合模式原理:组合模式的作用是讲继承同一父类的不同子类对象组合起来,形成一个树形的结构,例如公司的部门组织 代码如下 #include <iostream> #include <st ...

  5. 【BZOJ】【3613】【HEOI2014】南园满地堆轻絮

    思路题 考试结束前5.6min的时候想到……但是写挂了QAQ 其实就是(差值最大的逆序对之差+1)/2; 找逆序对其实维护一个max直接往过扫就可以了……因为逆序对是前面的数大于后面的数…… 正确性显 ...

  6. 【bzoj1085】[SCOI2005]骑士精神

    1085: [SCOI2005]骑士精神 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1757  Solved: 961[Submit][Statu ...

  7. thinkphp中SQLSTATE[42S02]: Base table or view not found: 1146 Table错误解决方法

    随手记录下今天在thinkphp3.2.3中遇到的错误SQLSTATE[42S02]: Base table or view not found: 1146 Table 'test.file_info ...

  8. SOA之(2)——SOA架构基础概念与设计框架

    SOA的设计框架 设计框架与架构相关的概念紧密相连,原则.模式和架构始终是与设计共舞的. SOA服务设计的原则中记录了一个基础的设计框架: 设计特性(Design Characteristic)——由 ...

  9. mybatis中:returned more than one row, where no more than one was expected.异常

    org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorEx ...

  10. BZOJ2463: [中山市选2009]谁能赢呢?

    感慨下汉堡的找水题能力… /************************************************************** Problem: 2463 User: zhu ...