site:Gits

De Documentação
World-wide-web-symbol.png
Documentação integrante do
namespace site
etc.

Sites de repositórios git. A hospedagem git é feita por fornecedores especializados, tais como GitLab, Github, etc. Como os fornecedores podem variar, a URL de referência, para ser válida como PURL, precisa ser baseada em domínios próprios; portanto é necessária a implementação de redirecionamentos no NGINX.

Regras gerais:

  • sempre citar git.dominio. Por exemplo https://git.Digital-guard.org redireciona para o site do atual fornecedor, Github.
  • em caso de "hot site" hospedado no mesmo fornecedor, usar git-site.dominio.
  • em caso de download de dados brutos (raw) com URL diferenciada no fornecedor, diferenciar na citação com git-raw.dominio.

Exemplos

subdominio Exemplo origem Exemplo redirecionado
git-site.OSM.codes https://git-site.osm.codes/Sfc4q https://osm-codes.github.io/Sfc4q
git.OSM.codes https://git.osm.codes https://github.com/osm-codes/
git.OSM.codes https://git.osm.codes/Sfc4q https://github.com/osm-codes/Sfc4q
git.AddressForAll.org https://git.AddressForAll.org https://github.com/AddressForAll/
git.AddressForAll.org https://git.AddressForAll.org/wiki-backup https://github.com/AddressForAll/wiki-backup
git.Digital-guard.org https://git.Digital-guard.org https://github.com/digital-guard/
git-raw.Digital-guard.org https://git-raw.Digital-guard.org/preservCutGeo-BR2021/main/data/GO/AparecidaGoiania/_pk0084.01/via/geohashes.geojson https://raw.githubusercontent.com/digital-guard/preservCutGeo-BR2021/main/data/GO/AparecidaGoiania/_pk0084.01/via/geohashes.geojson

Template NGINX

Variáveis marcadas como {$DOMAIN} e {$DOMAIN_PATH}.

server {
        server_name git.{$DOMAIN};
        include /etc/nginx/ssl.conf;
        location ~ ^/?.+ {
                rewrite
                  ^/?(.*)$
                  /{$DOMAIN_PATH}/$1
                  break;
                proxy_pass http://github.com;
        }
} # \server

server {
        server_name git-site.{$DOMAIN};
        include /etc/nginx/ssl.conf;
        location ~ ^/?.+ {
                rewrite
                  ^/?(.*)$
                  /$1
                  break;
                proxy_pass http://{$DOMAIN_PATH}.github.io;
        }                      
} # \server

server {
        server_name git-raw.{$DOMAIN};
        location ~ ^/?.+ {
                rewrite
                  ^/?(.*)$
                  /{$DOMAIN_PATH}/$1
                  break;
                proxy_pass https://raw.githubusercontent.com;
        }
} # \server