Flask İle Hazırlanan Web Sitesini İnternette Yayınlama
Python Flask ile yazdığınız web sitesini internette yayınlamak ve kullanıcılara açmak istiyorsanız neler yapmanız gerektiğini bu dersimizde detaylıca anlatıyoruz ve sitemizi aktif ediyoruz. Böylece Flask derslerini de tamamlamış oluyoruz.
Python Flask framework derslerine başladığımız Temelden İleriye Türkçe Flask Dersleri serimizde son derse gelmiş bulunuyoruz. Daha önceki dersler sayesinde hazırladığımız Flask web sitelerini artık yayına alma zamanı gelmiş bulunmakta. Bundan sonra aşağıdaki işlemleri sırasıyla takip ederek kendi hazırladığınız Flask web sitesini yayına alabilir ve kullanmaya başlayabilirsiniz.
Flask ile hazırladığım Kerteriz Blog Flask web sayfasını ziyaret etmek için Tıklayınız
1. Python Destekli Web Sunucunun Seçilmesi
Dosyalarımızı barındırabilmek ve alan adımızı yönlendirebilmek için öncelikle bir hosting hesabına sahip olmamız gerekiyor. Fakat hosting firmalarında satılan paylaşımlı hostingler Linux ve Windows paketlerde Cpanel, Plesk gibi yönetim arayüzleriyle PHP, .Net gibi dillere hizmet verebiliyor. Bize ise Python komutlarımızı çalıştırabilecek bir sunucu lazım.
Python komutlarını çalıştırabilecek sunucu seçeneklerine baktığımızda ise VPS, VDS veya Dedicated Server gibi seçenekler ilk aklımıza gelenler olabilir. VPS, VDS ve Dedicated Server gibi ürünlerde yapılandırmanızı yaparak Flask’ı ayağa kaldırabilir veya Google Cloud App Engine ürünüyle Python ile çalışabilirsiniz. Tabi bunlar ne kadar çözüm olsa da uzun ve zahmetli işler. Bunların yerine sizlere bu dersimizde hem kullanım kolaylığı hem de maaliyeti ile gayet makul olan Pythonanywhere kullanarak Python kodlarımızı nasıl çalıştırabileceğimizi göstereceğim.
Pythonanywhere, şu an için piyasada en kolay ve en hızlı Python kodlarınızı çalıştırabileceğiniz hosting firması. Üstelik özel bir alan adı yerine firmanın size sunduğu alan adını tercih ederseniz tamamen ücretsiz bir kullanım hakkı sunuyor. Örneğin: kerteriz.pythonanywhere.com
Eğer siz özel bir alan adı ile sitenizi kullanmak ve daha fazla özelliğe sahip olmak istiyorsanız çok düşük fiyatlarla hesabınızı yükseltebilirsiniz. Paketlerin özellikleri ve fiyatları aşağıdaki resimde olduğu gibidir.
Paketler ve fiyatlar hakkında daha fazla bilgi almak için Tıklayınız.
2. Flask Sitenin Yayınlanması
Hosting olarak Pythonanywhere firmasını seçtikten sonra hızlıca hesabınızı oluşturun ve mail adresinizle aktivasyonu tamamladıktan sonra Dashboard bağlantısıyla panelimizin ana sayfasına gelelim. Burada kullanabileceğiniz konsollar, dosyalarınız, web uygulamalarınız ve veritabanı, cronjob gibi planlanmış görevler gibi birçok özelliğe erişebileceğiniz bağlantılarla özet bilgileri görebilirsiniz. Tabi biz bir web uygulaması oluşturabilmek için sağ altta yer alan “Open Web Tab” butonunu kullanalım.
Açılan sayfada alan adını seçmemiz gerekiyor ama ücretsiz plan kullandığımız için zaten alan adımız kullanıcı adımızın subdomain olduğu haliyle kullanılacak vaziyette bizi bekliyor. Bu durumda tek yapmamız gereken ileri diyerek diğer sayfaya geçmek.
Şimdi ise hangi Frameworku kullanacağımızı seçmeliyiz. Seçeneklerde gördüğünüz gibi Python ile web sitesi yapabilmek için birçok Framework seçeneğimiz olsada şimdilik Flask seçip devam edelim. Ve umarım ilerleyen zamanlarda Django derslerini de blogta yayınlamaya zaman bulabilirim.
Python versiyonu için ise kendi bilgisayarınızda yazdığınız Python versiyonunu tercih etmeniz daha sağlıklı olacaktır. Ben burada Python 3.8 i seçerek devam ediyorum.
Sırada Flask uygulamamızı tanımlayıp başlattığımız ve derslerimizde kullandığımız index.py
dosyasını oluşturmak var. Açılan sayfada öntanımlı olarak flask_app.py
geliyor. Siz ister bu dosya adını, ister benim seçtiğim index.py
adını isterseniz de farklı bir dosya adı tercih edebilirsiniz.
Burada ilk web uygulaması oluşturma işlemlerimiz tamamlanmış oluyor ve web uygulamamızın ayar sayfası açılıyor. Bu sayfayı inceleyebilirsiniz ama şimdilik yapmamız gereken herhangi birşey bulunmamakta. Tabi 3 ay boyunca giriş yapılmayan ücretsiz hesapların pasif konuma çekileceği bilgilendirmesi ve süreyi sıfırlayacağımız butonu saymazsak.
Web uygulamamızı ve index.py
dosyamızı oluşturduktan sonra sağ üstte bulunan menüden Files bağlantısına gidelim ve sol tarafta yer alan Directories alanından mysite
klasörüne girip sağ panelde yer alan index.py
dosyasını düzenle butonuna tıklayalım.
Açılan editörde basitçe bir ekran çıktısı sunan web sayfası için return ile metin döndereceğim. Siz projenizde yer alan kodları buraya yapıştırabilirsiniz veya bu index.py
dosyanızı silip kendi dosyalarınızı ilgili klasöre yükleyebilirsiniz. Tabi static
, templates
gibi klasörleriniz varsa bunları da yüklemeyi unutmayınız. Ardından dosyayı 1 numaralı Save butonu ile kaydedip 2 numaralı Run butonu ile çalıştırmalıyız. Projenizde her değişiklik yaptığınızda ise 3 numaralı Reload butonunu kullanmayı unutmayınız.
Artık sitemizi yayına aldığımıza göre alan adımıza gidip sonuçları kontrol edebiliriz.
Tebrikler! Flask ile hazırladığımız web sitesi artık yayında. Bu andan itibaren isterseniz paket yükselterek özel bir domain kullanabilir, istersenizde ücretsiz hesabınızla sitenizi yayına devam ettirebilirsiniz. Tabi 3 ay boyunca girilmeyen ücretsiz hesapların pasif duruma çekileceğiniz unutmayınız.
Şu an yayında olan Flask örnek web sayfamı görmek isterseniz Tıklayınız.
3. Sonuç
Uzun süren Python Flask derslerinin nihayet sonuna geldik. Bu süreçte Python ile internet sitelerinin nasıl yapıalcağını birçok örnekle beraber gördük ve son dersimiz olan Flask web sayfalarının yayınlanması ile projelerimizi internette yayınlamaya başladık. Eğer fırsatım ve zamanım olursa ileride Django dersleri ile de Python internet sitelerinin nasıl yapılacağını anlatmaya çalışacağım. O zamana kadar sağlıcakla kalın 🙂