Debian 8de Nginx ile HTTP Git Sunucusu

Git, koddaki değişikliklerin izlenmesini sağlayan bir sürüm kontrol sistemidir (VCS). Bu eğitimde, bir HTTP (S) Git sunucusu kurarak ve kullanıcı adı / şifre kimlik doğrulaması ekleyerek ilerleyeceğiz.

Ön şartlar

  • Debian 8 (Jessie).
  • Sudo .
  • Seçtiğiniz metin editörü ( nano, vim).

Gerekli yazılımı yükleme

Biz gerekecektir nginx, git, fcgiwrapve apache httpd utils. Devam edin ve terminale yazın.

sudo apt-get install nginx git fcgiwrap apache2-utils

dpkg bağlantı noktası 80'e başka bir işlem (Apache gibi) zaten bağlıysa Nginx'i yükleyemez.

Git dizini oluşturma

Adresinde git dizini oluşturmak istediğinizi varsayarsak /var/www/git, aşağıdaki komutları çalıştırmanız gerekir:

mkdir /var/www/git
chown www-data:www-data /var/www/git # Make sure www-data (the user fastcgi runs) from has permissions.

Nginx'i Yapılandırma

Şimdi Nginx'i Git trafiğini Git'e aktaracak şekilde yapılandırmamız gerekiyor. Bu, varsayılan yapılandırmaya, veya server {}adresinde bir özel eklenebilir ./etc/nginx/conf.d/etc/nginx/sites-enabled

Yapılandırma dosyasının parametreleri ve yönergesi, aşağıda listelendikleri sırayla eklenmelidir.

location ~ (/.*) {
    client_max_body_size 0; # Git pushes can be massive, just to make sure nginx doesn't suddenly cut the connection add this.
    auth_basic "Git Login"; # Whatever text will do.
    auth_basic_user_file "/var/www/git/htpasswd";
    include /etc/nginx/fastcgi_params; # Include the default fastcgi configs
    fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend; # Tells fastcgi to pass the request to the git http backend executable
    fastcgi_param GIT_HTTP_EXPORT_ALL "";
    fastcgi_param GIT_PROJECT_ROOT /var/www/git; # /var/www/git is the location of all of your git repositories.
    fastcgi_param REMOTE_USER $remote_user;
    fastcgi_param PATH_INFO $1; # Takes the capture group from our location directive and gives git that.
    fastcgi_pass  unix:/var/run/fcgiwrap.socket; # Pass the request to fastcgi
}

Git depolarınızı bir alt dizinde yani. http://your-domain.com/reposilk satırı yapın location ~ /repos(/.*) {, bu bir normal ifade.

İçindeki server_namedirektifin server {}başka hiçbir şeyle çakışmadığından emin ol, yoksa Nginx isteği iletmeyecek.

Şifre kimlik doğrulaması ekleme

Nginx, Apache htpasswddosyalarını kabul eder , bunları oluşturmak için aşağıdaki komutu yürütmemiz gerekir:

htpasswd -c /var/www/git/htpasswd <your username>

Parolanızı girmeniz istenir. Daha fazla kullanıcı eklemek için şunları yapın:

htpasswd /var/www/git/htpasswd <another username>

Son bir adım

Tüm değişiklikleri çalıştırarak uygulamak için Nginx'i yeniden yüklediğinizden emin olun:

sudo service nginx reload

Artık özel bir Git sunucunuz var! Zevk almak.

(İsteğe bağlı) Git depolarını başlatan bir komut dosyası oluşturma

Lütfen www-data(FastCGI tarafından çalıştırılan kullanıcı hesabının) Git deposuna okuma ve yazma erişimine sahip olması gerektiğini unutmayın; bir komut dosyası oluşturmak artık baş ağrılarını daha sonra kaydeder.

Komut dosyanızı açın yani. /var/www/git/gitinit.shve aşağıdakileri yapıştırın:

#!/bin/sh
sudo -u www-data mkdir $1
cd $1
sudo -u www-data git init --bare

Komut dosyasını şu şekilde çalıştırabilirsiniz:

cd /var/www/git
./gitinit.sh repo-name

Çalıştırarak yürütmeye izin vermeyi unutmayın:

chmod +x /var/www/git/gitinit.sh

Yorum bırak

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.