Menyebarkan aplikasi Flask di Ubuntu (Apache+WSGI)

Menyebarkan aplikasi Flask di Ubuntu (Apache+WSGI)

Flask adalah kerangka kerja Python yang populer dan ringan yang memungkinkan pengembang untuk membangun aplikasi web dengan mudah. Salah satu aspek kunci dari menggunakan aplikasi Flask adalah memilih server web yang tepat dan antarmuka gateway. Dalam artikel ini, kita akan membahas cara menggunakan aplikasi Flask menggunakan Apache dan WSGI (Antarmuka Gateway Server Web) pada sistem berbasis Linux. Apache adalah server web yang kuat dan banyak digunakan, sedangkan WSGI adalah antarmuka standar antara server web dan aplikasi Python.

Panduan komprehensif ini akan memandu Anda melalui seluruh proses menggunakan aplikasi Flask dengan Apache dan WSGI pada mesin Linux. Pada akhir tutorial ini, Anda akan memiliki aplikasi flask fungsional yang berjalan di server web Apache dengan WSGI sebagai antarmuka.

Prasyarat

Untuk menggunakan aplikasi Flask di Ubuntu, Anda harus menginstal prasyarat berikut:

  • Python 3: Flask adalah kerangka kerja web Python, jadi Anda harus menginstal Python di server Anda.
  • Labu: Anda perlu menginstal Flask menggunakan PIP, Python Package Manager.
  • Apache2: Apache adalah server web populer yang dapat digunakan untuk meng -host aplikasi Flask.
  • mod_wsgi: Modul Apache ini digunakan untuk berinteraksi dengan aplikasi web yang kompatibel dengan WSGI seperti Flask.

Langkah 1: Mulai Paket Instalasi

Mari kita mulai dengan instalasi paket yang diperlukan pada sistem Anda menggunakan langkah -langkah berikut:

  1. Perbarui daftar paket dan tingkatkan paket yang sudah ketinggalan zaman:
    pembaruan sudo apt-get  Sudo apt-get upgrade  
  2. Pasang Python 3 dan Pip:
    sudo apt-get menginstal python3 python3-pip python3-venv  
  3. Instal apache2 dan mod_wsgi:
    sudo apt-get install apache2 libapache2-mod-wsgi-py3 

Langkah 2: Siapkan aplikasi Flask Anda

Buat direktori untuk aplikasi Anda dan salin semua file ke sana. Kemudian buat lingkungan virtual untuk mengisolasi aplikasi Flask Anda dan instal paket yang diperlukan.

  1. Buat direktori untuk aplikasi Flask Anda:
    mkdir/var/www/flask-app  cd/var/www/flask-app  
  2. Salin semua file aplikasi Flask ke direktori yang baru saja Anda buat
  3. Buat lingkungan virtual untuk aplikasi Anda dan aktifkan:
    python3 -m venv venv  Sumber venv/bin/aktifkan  
  4. Instal perpustakaan yang diperlukan di lingkungan virtual:
    Pip Instal Flask  
  5. Buat file python baru bernama aplikasi.py dalam Flaskapp Direktori dan tambahkan kode berikut: dari flask impor aplikasi flask = flask (__ name__) @App.rute ('/') def hello (): return 'hello, world!'
    123456dari flask impor flaskapp = flask (__ name__) @App.rute ('/') def hello (): return 'hello, world!'

    Ini menciptakan aplikasi Flask sederhana yang kembali "Halo Dunia!" Saat Anda mengakses URL root.

Langkah 3: Uji aplikasi Flask

Untuk menguji aplikasi Flask, jalankan perintah berikut di terminal:

 ekspor flask_app = aplikasi.py   Flask Run  

Ini harus memulai server pengembangan Flask. Buka browser web Anda dan pergi ke http: // localhost: 5000. Anda harus melihat "Halo Dunia!" ditampilkan di browser Anda.

Langkah 4: Buat file konfigurasi WSGI

  1. Buat titik masuk WSGI untuk aplikasi Flask Anda:
    nano/var/www/flaskapp/flaskapp.WSGI  
  2. Tempel kode berikut ke dalam file, ganti "FlaskApp" dengan nama aplikasi Anda: impor sys impor sistem logging.jalur.masukkan (0, '/var/www/flaskapp') sys.jalur.Masukkan (0, '/var/www/flaskapp/venv/lib/python3.10/paket situs/') # Siapkan logging logging.BasicConfig (stream = sys.stderr, level = logging.Debug) # Impor dan jalankan aplikasi Flask dari aplikasi Impor Aplikasi sebagai Aplikasi
    1234567891011Impor sysimport logging sys.jalur.masukkan (0, '/var/www/flaskapp') sys.jalur.Masukkan (0, '/var/www/flaskapp/venv/lib/python3.10/paket situs/') # Siapkan LoggingLogging.BasicConfig (stream = sys.stderr, level = logging.Debug) # Impor dan jalankan aplikasi Impor Aplikasi Flask AppFrom sebagai Aplikasi

  3. Simpan file dan tutup.

Langkah 5: Mengkonfigurasi Apache

  1. Buat file konfigurasi Apache untuk aplikasi Anda:
    sudo nano/etc/apache2/situs-tersedia/flaskapp.contoh.com.conf  
  2. Tempel kode berikut ke dalam file, mengganti "Flaskapp" Dengan nama aplikasi Anda dan jalur dengan jalur yang benar untuk pengaturan Anda: Servername Flaskapp.contoh.com serveradmin webmaster@localhost documentroot/var/www/flaskapp wsgidaemonprocess flaskapp threads = 5 wsgiscriptalias//var/www/flaskapp/flaskapp.WSGI WSGIAPPLICATIONGROUP %Global WSGIPROCESSGROUP FLASKAPP WSGIAPPLICATIONGROUP %Global pesanan DENY, Izinkan dari semua errorLog $ APACHE_LOG_DIR/flaskapp-error.Log CustomLog $ APACHE_LOG_DIR/flaskapp-access.log digabungkan
    123456789101112131415161718 Servername Flaskapp.contoh.com serveradmin webmaster@localhost documentroot/var/www/flaskapp wsgidaemonprocess flaskapp threads = 5 wsgiscriptalias//var/www/flaskapp/flaskapp.WSGI WSGIAPPLICATIONGROUP %Global Wsgiprocessgroup flaskapp wsgiApplicationGroup %global pesanan menolak, izinkan dari semua ErrorLog $ apache_log_dir/flaskapp-error.Log CustomLog $ APACHE_LOG_DIR/flaskapp-access.log digabungkan

  3. Aktifkan konfigurasi Apache baru:
    Sudo A2ensite Flaskapp.contoh.com  
  4. Restart Apache untuk menerapkan perubahan:
    Layanan sudo Apache2 restart  

Aplikasi Flask Anda sekarang harus aktif dan berjalan di server Ubuntu Anda. Anda dapat mengaksesnya dengan mengunjungi URL server Anda di browser web.

Langkah 6: Uji aplikasi Flask dengan Apache

Untuk menguji aplikasi Flask dengan Apache, buka browser web Anda dan kunjungi http: // flaskapp.contoh.com (Ganti FlaskApp.contoh.com dengan nama domain Anda). Anda harus melihat “Halo, dunia!“Ditampilkan di browser Anda.

Selamat! Anda telah berhasil menggunakan aplikasi Flask dengan Apache dan WSGI di Linux.

Kesimpulan

Menyebarkan aplikasi Flask dengan Apache dan WSGI di Linux bisa menantang, tetapi ini adalah langkah penting dalam membuat aplikasi Anda tersedia di internet. Panduan komprehensif ini telah menunjukkan kepada Anda cara menggunakan aplikasi Flask dengan Apache dan WSGI di Linux, dari membuat aplikasi Flask hingga mengkonfigurasi Apache dan membuat skrip WSGI.

Ingatlah untuk selalu menguji aplikasi Anda setelah penempatan dan pastikan itu berjalan dengan lancar. Dengan pengetahuan ini, Anda sekarang dapat menggunakan aplikasi Flask Anda dengan percaya diri dan membawa keterampilan pengembangan web Anda ke tingkat berikutnya.