菜单

搭建静态网站

2019年3月20日 - www.bway883.com

转载自[http://typeof.net/m/static-website-using-git-in-actions.html\]

在 Github Pages
火起来然后,很多个人写博客都初阶用全静态了。(什么?评论?disqus
啊!)这种静态站使用 git 管理网站内容,在本地(可能在劳务器端使用
Jekyll)生成页面内容后,用 git 推送到服务器上完毕布置。那种规划让大家死
Nerd
感觉很爽快,毕竟一切尽在左右。搭建三个那样的服务器并不困难,趁着近年来发轫42qu 的服务器,就在此处放个教程给和小编同样的神奇生物好了。

装 git 那么些工作不复杂,作者的服务器使用 Centos 6.2,yum install git
就消除了。

www.bway883.com,接下去是安装 git 的权限管理系列 gitosis
使服务器援助推送。这些手续不在赘述,网上内容多得是。小编只要你放网站的
repo 位于 /home/git/repositories/site.git。

接下来是把 git 用户和网页服务器的用户(小编那边是
nginx)参加同三个组里。那对今后 git
和网站目录同步至关心保护要,不然会有丰富劳累的权杖难点。

sudo groupadd web
    sudo usermod -a -G web git
    sudo usermod -a -G web nginx

率先我们需求树立3个目录来放置网站,接下去把它的专属组改成地点建立的 web
组并且设置组的写权限:

sudo mkdir /var/www/site
    sudo chmod g+w /var/www/site
    sudo chgrp web /var/www/site

跟着找到您的网站对应的 repo(比如
/home/git/repositories/site.git),编辑里面包车型大巴 hooks/post-receive 文件:

#!/bin/bash



while read oldrev newrev ref

do

    branch=`echo $ref | cut -d/ -f3`



    if [ "master" == "$branch" ]; then

        git --work-tree=/var/www/site checkout -f $branch

        echo 'Changes pushed live.'

    fi



done

这一段脚本是用 git 用户运行的,所以地方才需求给 /var/www/site
设置权限还要把 git 加组。

好了,今后可以推更新了:

git push origin master

一经看到“Changes pushed live.”,你就成功了。把 nginx 的目录设置成
/var/www/site,看看效果怎么着?

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图