Hetzner'da Webhosting veya Yönetilen Sunucuda Django Uygulamasını Çalıştırma

0 Hisse senetleri
0
0
0
0

giriiş

Bu eğitimde, Hetzner Webhosting veya Managed Server sunucularında bir Python Django uygulamasını nasıl çalıştıracağımızı öğreneceğiz. Django bir Python web framework'üdür. Varsayılan olarak, framework WSGI (web sunucusu-uygulama arayüzü) üzerinde çalışır, ancak mod_wsgi yönetilen bir Apache sunucusunda kullanılamaz. Bununla birlikte, WSGI'yi diğer uyumlu arayüzlere dönüştürmenin birkaç yolu vardır.

Ön koşullar
  • SSH desteği olan webhosting (versiyon 9 veya üzeri) veya SSH erişimi etkinleştirilmiş Yönetilen Sunucu.

Adım 1 – Bağımlılıkları yükleyin

Adım 1.1 – Virtualenv'i yükleyin ve etkinleştirin
pip3 install --break-system-packages virtualenv mkdir /usr/home/holu/virtualenvs python3 -m virtualenv /usr/home/holu/virtualenvs/example_com . /usr/home/holu/virtualenvs/example_com/bin/activate
Adım 1.2 – Django'yu Yükleme
pip kurulumu django
Adım 1.3 – Flup'u yükleyin (isteğe bağlı, FastCGI için gerekli)
pip kurulumu flup

Adım 2 – Django projesini oluşturun ve yapılandırın

Adım 2.1 – Projenin başlatılması
mkdir /usr/home/holu/djangoprojects env -C "/usr/home/holu/djangoprojects" Django-admin startproject example_com
Adım 2.2 – Proje Yapılandırması

Değişkene istenen tüm etki alanları İZİN VERİLEN_ANA_SAHİPLER Erişilebilir kılmak için ekleyin.

vim /home/holu/djangoprojects/example_com/example_com/settings.py

Vurarak BEN “İçe Aktarma Modu”na gidin ve istenen tüm alan adlarını ekleyin:

İZİN VERİLEN_ANA_SAYFALAR = ['example.com']

Vurarak Esc "Komut moduna" geri dönün ve :wq Kaydedip çıkmak için enter tuşuna basın.

Adım 3 – Web Sunucusu Belge Kökünü Hazırlayın

Boş bir web sitesi dizini oluşturun ve konsoleH'deki belge kökünü değiştirin.

mkdir -p /usr/home/holu/public_html/example_com
Seçenek 1 – FastCGI

.htaccess oluşturun

vim /usr/home/holu/public_html/example_com/.htaccess

Vurarak BEN “İçe Aktarma Modu”na gidin ve aşağıdaki içeriği girin:

RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ djangoapp.fcgi/$1 [QSA,L]

Vurarak Esc "Komut moduna" geri dönün ve :wq Kaydedip çıkmak için enter tuşuna basın.

.fcgi betiği oluştur

vim /usr/home/holu/public_html/example_com/djangoapp.fcgi
#!/usr/home/holu/virtualenvs/example_com/bin/python sys'yi içe aktar os'u içe aktar django'yu içe aktar flup.server.fcgi'den WSGIServer'ı içe aktar django.core.handlers.wsgi'den WSGIHandler'ı içe aktar sys.path.append("/usr/home/holu/djangoprojects/example_com") os.environ['DJANGO_SETTINGS_MODULE']="example_com.settings" django.setup(set_prefix=False) WSGIServer(WSGIHandler()).run()

Sahibi için yürütme iznini ayarlayın:

chmod 744 /usr/home/holu/public_html/example_com/djangoapp.fcgi
Seçenek 2 – CGI

.htaccess oluşturun

vim /usr/home/holu/public_html/example_com/.htaccess

Vurarak BEN “İçe Aktarma Modu”na gidin ve aşağıdaki içeriği girin:

RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ djangoapp.cgi/$1 [QSA,L]

Vurarak Esc "Komut moduna" geri dönün ve :wq Kaydedip çıkmak için enter tuşuna basın.

.cgi betiği oluşturma

vim /usr/home/holu/public_html/example_com/djangoapp.cgi
#!/usr/home/holu/virtualenvs/example_com/bin/python sys'yi içe aktar os'u içe aktar django'yu içe aktar wsgiref.handlers'ı içe aktar django.core.handlers.wsgi'den WSGIHandler'ı içe aktar sys.path.append("/usr/home/holu/djangoprojects/example_com") os.environ['DJANGO_SETTINGS_MODULE']="example_com.settings" django.setup(set_prefix=False) wsgiref.handlers.CGIHandler().run(WSGIHandler())

Sahibi için yürütme iznini ayarlayın:

chmod 744 /usr/home/holu/public_html/example_com/djangoapp.cgi

4. Adım – Test Etme

Test etmek için alan adınızı ziyaret edin. Aşağıdaki görsele benzer bir şey görmelisiniz:

Sonuç

Artık Django uygulamalarınızı yönetilen bir işletim sistemine dağıtabilirsiniz.

[Toplam: 1   Ortalama: 5/5]
Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Ayrıca Şunları da Beğenebilirsiniz

Three.js nedir?

Giriş Three.js birçok şey yapar ve onunla nasıl çalışılacağı biraz kafa karıştırıcı olabilir…