indoglobal.com
Langsung ke: navigasi, cari

Django

(Perbedaan revisi)
Baris 55: Baris 55:
 
$ pip install flup6
 
$ pip install flup6
 
$ pip install django
 
$ pip install django
 +
$ pip install django-fastcgi-server
 
</source>
 
</source>
  
Baris 90: Baris 91:
  
 
<source lang="python">
 
<source lang="python">
#!/home1/username/.env/python-3.4/bin/python
+
#!/home/u12120sdu/.env/python-3.8/bin/python
  
 
import sys, os
 
import sys, os
sys.path.insert(0, '/home1/username/.env/python-3.4/site-packages')
+
 
 +
sys.path.insert(0, '/home/username/.env/python-3.8/lib/python3.8/site-packages')
 +
os.chdir('/home/username/projects/myproject/myproject')
 
os.environ['DJANGO_SETTINGS_MODULE'] = 'myproject.settings'
 
os.environ['DJANGO_SETTINGS_MODULE'] = 'myproject.settings'
from django.core.servers.fastcgi import runfastcgi
+
 
runfastcgi(method="threaded", daemonize="false")
+
from django_fastcgi.servers.fastcgi import runfastcgi
 +
from django.core.servers.basehttp import get_internal_wsgi_application
 +
 
 +
wsgi_application = get_internal_wsgi_application()
 +
runfastcgi(wsgi_application, method="threaded", daemonize="false", minspare=1, maxspare=1, maxchildren=1)
 
</source>
 
</source>
  

Revisi per 5 Juni 2020 13.40

Anda dapat menggunakan virtualenv untuk menginstall Django di akun hosting indoglobal.com.

Daftar isi

Persiapan

Sebelum memulai, pastikan di server tempat akun anda diletakkan sudah terinstal versi Python yang diperlukan. Untuk mengetahui versi Python yang dibutuhkan Django, silakan baca FAQ Django. Jika di sistem belum terinstal versi Python yang dibutuhkan, silakan hubungi tim dukungan teknis kami untuk diinstalkan.

Tulisan ini mengasumsikan anda menggunakan Python 3.8

Setup virtualenv

Login ke akun anda melalui shell (SSH atau web based terminal kami), dan jalankan perintah berikut ini.

Untuk Python 3.8:

mkdir .env
/opt/python-3.8/bin/python3.8 -m venv .env/python-3.8

Perintah tersebut akan membuat virtualenv di directory ~/.env/python-3.4. Sekarang anda memiliki instalasi Python 3.4 di directory tersebut.

(informasi usang) Untuk Python 3 versi lama:

$ mkdir .env
$ cd .env
$ pyvenv-3.4 python-3.4

(informasi usang) Untuk Python 2:

$ mkdir .env
$ cd .env
$ virtualenv python-3.4

Perintah tersebut akan membuat virtualenv di directory ~/.env/python-3.4. Sekarang anda memiliki instalasi Python 3.4 di directory tersebut.

Aktifkan virtualenv Pada Sesi Login Anda

Sekarang aktifkan virtualenv yang telah anda buat.

source ~/.env/python-3.8/bin/activate

Setelah perintah tersebut dijalankan, maka sesi login anda saat itu akan menggunakan Python 3.4.

Perhatian
Anda perlu menjalankan perintah ini setiap kali ingin menggunakan versi Python tersebut untuk mengelola instalasi Django melalui shell

Instal Paket Yang Dibutuhkan

$ pip install flup6
$ pip install django
$ pip install django-fastcgi-server

Perhatian
Untuk Python 2, paket yang dibutuhkan adalah 'flup', bukan 'flup6'.

Memulai Proyek Django Baru

$ mkdir ~/projects
$ cd ~/projects
$ django-admin.py startproject myproject
$ cd ~/env/python-3.8/lib/python3.4/site-packages/
$ ln -s ~/projects/myproject/myproject

Perintah tersebut akan membuat proyek 'myproject' yang diletakkan di ~/projects/myproject.

Pastikan Paket Terinstal Dengan Baik

$ python
Python 3.8.3 (default, Jun  5 2020, 13:18:07) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> import flup
>>> import myproject

Jika tidak ada error, maka paket seharusnya sudah terinstall dengan baik.

Instal Front Controller

Di directory web anda, buatlah file 'myproject.fcgi' dengan isi sebagai berikut:

#!/home/u12120sdu/.env/python-3.8/bin/python
 
import sys, os
 
sys.path.insert(0, '/home/username/.env/python-3.8/lib/python3.8/site-packages')
os.chdir('/home/username/projects/myproject/myproject')
os.environ['DJANGO_SETTINGS_MODULE'] = 'myproject.settings'
 
from django_fastcgi.servers.fastcgi import runfastcgi
from django.core.servers.basehttp import get_internal_wsgi_application
 
wsgi_application = get_internal_wsgi_application()
runfastcgi(wsgi_application, method="threaded", daemonize="false", minspare=1, maxspare=1, maxchildren=1)

Ubah file tersebut menjadi executable dengan perintah chmod +x myproject.fcgi

Kemudian buatlah file .htaccess dengan isi sebagai berikut:

AddHandler fcgid-script .fcgi
RewriteEngine On
Options +FollowSymLinks +ExecCGI
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ myproject.fcgi/$1 [QSA,L]

Selesai!

Pastikan Django telah terinstall dengan baik dengan menggunakan web browser.

Untuk mengelola instalasi Django menggunakan shell, jangan lupa untuk mengikuti langkah "Aktifkan virtualenv Pada Sesi Login Anda" di atas.