{"id":737,"date":"2021-07-01T13:00:53","date_gmt":"2021-07-01T13:00:53","guid":{"rendered":"https:\/\/blog.furkanege.com.tr\/?p=737"},"modified":"2023-03-12T09:49:07","modified_gmt":"2023-03-12T09:49:07","slug":"flask-nasil-kurulur","status":"publish","type":"post","link":"https:\/\/furkanege.com.tr\/blog\/flask-nasil-kurulur\/","title":{"rendered":"Python: Flask Nas\u0131l Kurulur? [30 Ad\u0131m]"},"content":{"rendered":"\n\n<div class=\"kk-star-ratings kksr-auto kksr-align-left kksr-valign-top\"\n    data-payload='{&quot;align&quot;:&quot;left&quot;,&quot;id&quot;:&quot;737&quot;,&quot;slug&quot;:&quot;default&quot;,&quot;valign&quot;:&quot;top&quot;,&quot;ignore&quot;:&quot;&quot;,&quot;reference&quot;:&quot;auto&quot;,&quot;class&quot;:&quot;&quot;,&quot;count&quot;:&quot;1&quot;,&quot;legendonly&quot;:&quot;&quot;,&quot;readonly&quot;:&quot;&quot;,&quot;score&quot;:&quot;5&quot;,&quot;starsonly&quot;:&quot;&quot;,&quot;best&quot;:&quot;5&quot;,&quot;gap&quot;:&quot;5&quot;,&quot;greet&quot;:&quot;Oyla post&quot;,&quot;legend&quot;:&quot;5\\\/5 - (1 vote)&quot;,&quot;size&quot;:&quot;24&quot;,&quot;title&quot;:&quot;Python: Flask Nas\u0131l Kurulur? [30 Ad\u0131m]&quot;,&quot;width&quot;:&quot;142.5&quot;,&quot;_legend&quot;:&quot;{score}\\\/{best} - ({count} {votes})&quot;,&quot;font_factor&quot;:&quot;1.25&quot;}'>\n            \n<div class=\"kksr-stars\">\n    \n<div class=\"kksr-stars-inactive\">\n            <div class=\"kksr-star\" data-star=\"1\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"2\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"3\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"4\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"5\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n    \n<div class=\"kksr-stars-active\" style=\"width: 142.5px;\">\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 5px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n                \n\n<div class=\"kksr-legend\" style=\"font-size: 19.2px;\">\n            5\/5 - (1 vote)    <\/div>\n    <\/div>\n\n<h3 class=\"wp-block-heading\">Flask Nas\u0131l Kurulur?<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Bu yaz\u0131mda Python Framework&#8217;u olan Flask ile \u00e7ok basit bir uygulama yapmay\u0131 ve bunu \u0130nternet&#8217;e, yani kanl\u0131 canl\u0131 bir sunucuya en kolay \u015fekilde at\u0131p orada \u00e7al\u0131\u015ft\u0131rmay\u0131\/yay\u0131nlamay\u0131 g\u00f6sterece\u011fim.<\/h4>\n\n\n\n<p>\u00d6ncelikle size bir bilgisayar, buna kurulu python (linux veya mac&#8217;se zaten kurulu.), sitenizi yay\u0131nlaman\u0131z i\u00e7in bir sunucu (m\u00fckemmel olmak zorunda de\u011fil), sunucu kontrol\u00fc i\u00e7in biraz teknik bilgi ve <strong>PuTTy <\/strong>ve <strong>WinSCP <\/strong>adl\u0131 uygulamalar laz\u0131m.<\/p>\n\n\n\n<p>Bilgisayar\u0131n\u0131z windows ise ve python yoksa <strong><a aria-label=\"undefined (opens in a new tab)\" rel=\"noreferrer noopener\" href=\"https:\/\/www.furkanege.com.tr\/blog\/python-dersleri-python-kurulumu\/\" target=\"_blank\">\u015furadan<\/a> <\/strong>python&#8217;u kurup geri bu yaz\u0131ya d\u00f6n\u00fcn\u00fcz.<\/p>\n\n\n\n<p>\u015eimdi ilk olarak bir Python projesi olu\u015ftural\u0131m.<\/p>\n\n\n\n<p>Projenizi olu\u015fturdu\u011funuzu d\u00fc\u015f\u00fcnerek Flask hakk\u0131nda biraz bilgi vermek istiyorum.<\/p>\n\n\n\n<p>Flask, Python&#8217;da yaz\u0131lm\u0131\u015f bir web framework&#8217;udur. <strong>Django <\/strong>adl\u0131 di\u011fer Python framework&#8217;\u00fcne g\u00f6re daha hafif ve yap\u0131labilecek i\u015flemler daha s\u0131n\u0131r\u0131l\u0131d\u0131r. S\u0131n\u0131rl\u0131 dediysem korkmay\u0131n, flask ile bir blog bile geli\u015ftirebilirsiniz. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Sadece sizin hayal g\u00fcc\u00fcn\u00fcz ile s\u0131n\u0131rl\u0131.<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Esnek, <\/li><li>Kullan\u0131m\u0131, <\/li><li>\u00d6\u011frenimi<\/li><li>URL y\u00f6nlendirmeleri django&#8217;ya g\u00f6re daha kolay bir framework&#8217;d\u00fcr. <\/li><\/ul>\n\n\n\n<p>Hadi ba\u015flayal\u0131m.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">pip install Flask komutu ile konsol ekran\u0131m\u0131zdan k\u00fct\u00fcphanemizi indirelim.<\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-1.jpg\" alt=\"flask-nasil-kurulur\" class=\"wp-image-1813\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-1.jpg 1920w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-1-768x432.jpg 768w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-1-1536x864.jpg 1536w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-1-1024x576.jpg 1024w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-1-600x337.jpg 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><figcaption>Flask Nas\u0131l Kurulur?<\/figcaption><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">from flask import Flask<\/h4>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-2.jpg\" alt=\"\" class=\"wp-image-1814\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-2.jpg 1920w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-2-768x432.jpg 768w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-2-1536x864.jpg 1536w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-2-1024x576.jpg 1024w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-2-600x337.jpg 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">app = Flask(__name__)<\/h4>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-3.jpg\" alt=\"\" class=\"wp-image-1816\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-3.jpg 1920w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-3-768x432.jpg 768w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-3-1536x864.jpg 1536w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-3-1024x576.jpg 1024w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-3-600x337.jpg 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">@app.route(&#8216;\/&#8217;)<\/h4>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-4.jpg\" alt=\"\" class=\"wp-image-1815\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-4.jpg 1920w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-4-768x432.jpg 768w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-4-1536x864.jpg 1536w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-4-1024x576.jpg 1024w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-4-600x337.jpg 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">if __name__ == &#8216;__main__&#8217;:<\/h4>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-5.jpg\" alt=\"\" class=\"wp-image-1817\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-5.jpg 1920w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-5-768x432.jpg 768w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-5-1536x864.jpg 1536w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-5-1024x576.jpg 1024w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-5-600x337.jpg 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">run<\/h4>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-6.jpg\" alt=\"\" class=\"wp-image-1818\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-6.jpg 1920w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-6-768x432.jpg 768w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-6-1536x864.jpg 1536w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-6-1024x576.jpg 1024w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-6-600x337.jpg 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">localhost:5000<\/h4>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-7.jpg\" alt=\"\" class=\"wp-image-1819\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-7.jpg 1920w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-7-768x432.jpg 768w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-7-1536x864.jpg 1536w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-7-1024x576.jpg 1024w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-7-600x337.jpg 600w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/figure>\n\n\n\n<p>Flask uygulamam\u0131z localhost \u00fczerinde \u00e7al\u0131\u015ft\u0131.<\/p>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/github.com\/furkanege\/depo-python\/blob\/master\/ilkFlaskProjesi.py\" target=\"_blank\" rel=\"noreferrer noopener\">Buraya kadar olan kodlar:<\/a><\/h4>\n\n\n\n<pre class=\"wp-block-preformatted\">from flask import Flask\n<strong>\"\"\"Flask indirmemiz bitti projemize import ettik. Yani art\u0131k bu projede Flask'\u0131 kullanabilece\u011fiz.\"\"\"\n\"\"\"Baz\u0131 durumlarda 'pip install --user Flask' ile de kurman\u0131z gerekebilir. Permission denied hatas\u0131 verdi\u011fi g\u00f6r\u00fclm\u00fc\u015ft\u00fcr.\"\"\"\n\n\"\"\"Flask k\u00fct\u00fcphanemizin flask s\u0131n\u0131f\u0131n\u0131 kullanarak bir nesne olu\u015ftural\u0131m. Mant\u0131\u011f\u0131n\u0131 \u00f6\u011fretmekle zaman\u0131n\u0131z\u0131 \u00e7almayaca\u011f\u0131m. \nZaten biliyorsunuzdur yay\u0131na alma safhas\u0131an geldiyseniz.\"\"\"\n<\/strong>app = Flask(__name__)\n\n<em>#\u015eimdi de k\u00f6k dizinimizi, yani ana URL'mizi tan\u0131mlayal\u0131m. localhost'da aktif olacakt\u0131r.\n<\/em>@app.route(<strong>'\/'<\/strong>) <em>#URL tan\u0131mlama k\u0131sm\u0131m\u0131z\n<\/em>def mesaj(): <em>#mesaj adl\u0131 bir fonksiyon tan\u0131ml\u0131yoruz.\n    <\/em>return <strong>'Selamin Aleykum' <\/strong><em>#Ve ekrana d\u00f6necek olan de\u011feri yaz\u0131yoruz. Biz ekrana selam d\u00f6nd\u00fcrelim.\n\n#Bu kodlar ise bizim dosyam\u0131z\u0131 \u00e7al\u0131\u015ft\u0131rmam\u0131z\u0131, yani ay\u0131klay\u0131p yay\u0131nlamam\u0131z\u0131 sa\u011fl\u0131yor.\n<\/em>\"\"\"\nif __name__ == <strong>'__main__'<\/strong>:\n    app.debug = True\n    app.run(host= <strong>'localhost'<\/strong>, port= 5000)\n\"\"\" \n<em>#Localde \u00e7al\u0131\u015ft\u0131raca\u011f\u0131m\u0131z i\u00e7in host'u localhost se\u00e7iyoruz ve portu 5000 yap\u0131yoruz.\n#Web'de bu 80'dir ve bu kodlara gerek yoktur.<\/em><\/pre>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p>Hadi \u015fimdi de sunucu i\u015flemlerimizi yapal\u0131m.<\/p>\n\n\n\n<p>Sunucunuzun oldu\u011funu varsayarak devam ediyorum. Mutlaka bir sunucunuz olmas\u0131 \u015fart, \u00e7\u00fcnk\u00fc root izinleri gerekecek. Bir hosting&#8217;de bunu yapman\u0131z m\u00fcmk\u00fcn de\u011fil.<\/p>\n\n\n\n<p>PuTTy program\u0131n\u0131 <a rel=\"noreferrer noopener\" href=\"https:\/\/www.bitvise.com\/ssh-client-download\" target=\"_blank\">\u015furadan<\/a> indirelim ve sunucu kullan\u0131c\u0131 ad\u0131m\u0131z ile \u015fifremizi yazarak giri\u015f yapal\u0131m. (Root kullan\u0131c\u0131s\u0131 ile girmeye dikkat ediniz.)<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<pre class=\"wp-block-preformatted\">sudo apt update;sudo apt install apache2;apache2 -version<\/pre>\n\n\n\n<p>Komut sat\u0131r\u0131n\u0131 sunucumuza yap\u0131\u015ft\u0131rarak Apache&#8217;yi indirelim ve sunucumuza kurmu\u015f olal\u0131m.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"649\" height=\"502\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-8.jpg\" alt=\"\" class=\"wp-image-1820\"\/><\/figure><\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p>Kuruluyor:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1116\" height=\"1012\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-9.jpg\" alt=\"\" class=\"wp-image-1821\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-9.jpg 1116w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-9-768x696.jpg 768w\" sizes=\"(max-width: 1116px) 100vw, 1116px\" \/><\/figure><\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p>Ve kuruldu:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"450\" height=\"102\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-10.jpg\" alt=\"\" class=\"wp-image-1822\"\/><\/figure><\/div>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p>\u015eimdi ise g\u00fcvenlik duvar\u0131m\u0131z\u0131 konfig\u00fcre edelim:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo ufw app list;sudo ufw allow 'Apache'<\/pre>\n\n\n\n<p>Komut sat\u0131r\u0131 bu i\u015fi yapacakt\u0131r:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"471\" height=\"164\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-11.jpg\" alt=\"\" class=\"wp-image-1823\"\/><\/figure><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p><strong>Apache <\/strong>konfig\u00fcrasyonumuzu yapal\u0131m:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo systemctl status apache2<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"721\" height=\"292\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-12.jpg\" alt=\"\" class=\"wp-image-1824\"\/><\/figure>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p><strong>mod_wsgi<\/strong> indirelim ve aktif edelim:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo apt-get install libapache2-mod-wsgi python-dev<\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"710\" height=\"292\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-13.jpg\" alt=\"\" class=\"wp-image-1825\"\/><\/figure><\/div>\n\n\n\n<p>Ve kuruldu:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"547\" height=\"504\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-14.jpg\" alt=\"\" class=\"wp-image-1826\"\/><\/figure><\/div>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p>Flask uygulamam\u0131z\u0131 olu\u015ftural\u0131m:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">cd \/var\/www;sudo mkdir site;cd site<\/pre>\n\n\n\n<p>Burada dikkat etmeniz gereken bir nokta var; &#8220;site&#8221;. Klas\u00f6r olarak istedi\u011finiz ad\u0131 vermelisiniz, bir daha de\u011fi\u015ftiremeyece\u011finizi bilerek bu i\u015flemi yap\u0131n. Size \u00f6nerim, bu noktadan itibaren kalan ad\u0131mlarda bol bol deneme yaparak mant\u0131\u011f\u0131n\u0131 iyice anlaman\u0131z.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"570\" height=\"36\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-15.jpg\" alt=\"\" class=\"wp-image-1827\"\/><\/figure><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p>Flask&#8217;\u0131 sunucumuza kural\u0131m:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo apt-get install python-pip;sudo pip install Flask<\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1087\" height=\"403\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-16.jpg\" alt=\"\" class=\"wp-image-1828\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-16.jpg 1087w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-16-768x285.jpg 768w\" sizes=\"(max-width: 1087px) 100vw, 1087px\" \/><\/figure><\/div>\n\n\n\n<p>Ve kuruldu:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1380\" height=\"1011\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-17.jpg\" alt=\"\" class=\"wp-image-1829\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-17.jpg 1380w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-17-768x563.jpg 768w\" sizes=\"(max-width: 1380px) 100vw, 1380px\" \/><\/figure><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p>\u015eimdi s\u0131ra WinSCP uygulamam\u0131z\u0131 kullanmaya geldi. Normalde sunucu ile ilgili teknik bilgisi az olanlar FTP \u00fczerinden PuTTy kullanarak \u00e7ok kolayl\u0131kla s\u0131radaki i\u015flemi yapabilir ama ben SSH kullananlar i\u00e7in ayr\u0131ca bir y\u00f6ntem kullanarak devam ediyorum. Herkes bir FTP hesab\u0131 olan sunucu alamayabiliyor.<\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" href=\"https:\/\/winscp.net\/download\/WinSCP-5.17.3-Setup.exe\" target=\"_blank\">\u015euradan<\/a> uygulamam\u0131z\u0131 indirelim ve kurup a\u00e7al\u0131m (PuTTy&#8217;de kaydetti\u011finiz bilgiler varsa buraya akt\u0131racakt\u0131r.):<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"954\" height=\"638\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-18.jpg\" alt=\"\" class=\"wp-image-1830\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-18.jpg 954w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-18-768x514.jpg 768w\" sizes=\"(max-width: 954px) 100vw, 954px\" \/><\/figure><\/div>\n\n\n\n<p>SSH oldu\u011fu i\u00e7in SFTP&#8217;i se\u00e7ip, sunucu ip, kap\u0131 numaras\u0131(22), kullan\u0131c\u0131 ad\u0131 ve \u015fifreyi girerek y\u00f6netim paneli olmayan sunucumuzun b\u00fct\u00fcn dosyalar\u0131n\u0131 bir GU\u0130 (grafik ara birimi) \u00fczerinde g\u00f6rebilir ve d\u00fczenleyebiliriz. Hadi yine iyisiniz, FTP hesab\u0131na para vermekten kurtard\u0131m sizi \ud83d\ude42<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"496\" height=\"600\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-19.jpg\" alt=\"\" class=\"wp-image-1831\"\/><\/figure><\/div>\n\n\n\n<p><strong>\/var\/www\/site<\/strong> klas\u00f6r\u00fcm\u00fcz\u00fc olu\u015fturmu\u015ftuk hat\u0131rlarsan\u0131z. Projemizi bilgisayar\u0131m\u0131zdan oraya atal\u0131m:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1011\" height=\"515\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-20.jpg\" alt=\"\" class=\"wp-image-1832\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-20.jpg 1011w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-20-768x391.jpg 768w\" sizes=\"(max-width: 1011px) 100vw, 1011px\" \/><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"559\" height=\"422\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-21.jpg\" alt=\"\" class=\"wp-image-1833\"\/><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"503\" height=\"145\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-22.jpg\" alt=\"\" class=\"wp-image-1834\"\/><\/figure><\/div>\n\n\n\n<p>Ve bir i\u00e7 klas\u00f6r olu\u015fturarak dosyalar\u0131 da oran\u0131n i\u00e7ine atal\u0131m:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"496\" height=\"157\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-23.jpg\" alt=\"\" class=\"wp-image-1835\"\/><\/figure><\/div>\n\n\n\n<p>Art\u0131k buras\u0131 ile i\u015fimiz bitti. <\/p>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p>Tekrardan PuTTY&#8217;mize gelelim. Sanal hostumuzu konfig\u00fcre edelim ve aktifle\u015ftirelim:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo nano \/etc\/apache2\/sites-available\/site.conf<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"776\" height=\"23\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-24.jpg\" alt=\"\" class=\"wp-image-1836\" srcset=\"https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-24.jpg 776w, https:\/\/furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-24-768x23.jpg 768w\" sizes=\"(max-width: 776px) 100vw, 776px\" \/><\/figure>\n\n\n\n<p>Buraya yap\u0131\u015ft\u0131raca\u011f\u0131n\u0131z kodlar (Site klas\u00f6r\u00fcn\u00fcze g\u00f6re d\u00fczenleyiniz.):<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;VirtualHost *:80&gt;\n\t\tServerName ip adresiniz\n\t\tServerAdmin email@adresiniz.com\n\t\tWSGIScriptAlias \/ \/var\/www\/site\/site.wsgi\n\t\t&lt;Directory \/var\/www\/site\/site\/&gt;\n\t\t\tOrder allow,deny\n\t\t\tAllow from all\n\t\t&lt;\/Directory&gt;\n\t\tAlias \/static \/var\/www\/site\/site\/static\n\t\t&lt;Directory \/var\/www\/site\/site\/static\/&gt;\n\t\t\tOrder allow,deny\n\t\t\tAllow from all\n\t\t&lt;\/Directory&gt;\n\t\tErrorLog ${APACHE_LOG_DIR}\/error.log\n\t\tLogLevel warn\n\t\tCustomLog ${APACHE_LOG_DIR}\/access.log combined\n&lt;\/VirtualHost&gt;<\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"556\" height=\"315\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-25.jpg\" alt=\"\" class=\"wp-image-1837\"\/><figcaption>CTRL+X kombinasyonuyla dosyam\u0131zdan \u00e7\u0131kal\u0131m (&#8220;Y&#8221; diyin.)<\/figcaption><\/figure><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo a2ensite site;systemctl reload apache2<\/pre>\n\n\n\n<p>Kod sat\u0131r\u0131 ile sitemizi Apache&#8217;ye tan\u0131tal\u0131m ve Apache&#8217;yi yenileyelim:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"582\" height=\"70\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-26.jpg\" alt=\"\" class=\"wp-image-1838\"\/><\/figure><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p>\u015eimdi ise <strong>.wsgi<\/strong> dosyam\u0131z\u0131 olu\u015ftural\u0131m.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo nano site.wsgi<\/pre>\n\n\n\n<p class=\"has-vivid-red-color has-text-color\">Not: konumunuza dikkat edin.<strong> \/var\/www\/site\/<\/strong> i\u00e7erisinde olman\u0131z gerekmekte.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"545\" height=\"20\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-27.jpg\" alt=\"\" class=\"wp-image-1839\"\/><\/figure><\/div>\n\n\n\n<p>Dosya i\u00e7ine yazaca\u011f\u0131n\u0131z kodlar:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">import sys\nimport logging\nlogging.basicConfig(stream=sys.stderr)\nsys.path.insert(0,<strong>\"\/var\/www\/site\/\"<\/strong>)\n\nfrom site import app as application\napplication.secret_key = <strong>'Gizli bir anahtar b\u0131rakabilirsiniz.'<\/strong><\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"513\" height=\"162\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-28.jpg\" alt=\"\" class=\"wp-image-1840\"\/><\/figure><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p>Son kontrollerimizi yapal\u0131m ve Apache&#8217;mizi yeniden ba\u015flatal\u0131m:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo service apache2 restart<\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"637\" height=\"153\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-29.jpg\" alt=\"\" class=\"wp-image-1841\"\/><\/figure><\/div>\n\n\n\n<p>Sonu\u00e7:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"269\" height=\"95\" src=\"https:\/\/www.furkanege.com.tr\/blog\/wp-content\/uploads\/2021\/06\/flask-proje-olusturma-30.jpg\" alt=\"\" class=\"wp-image-1842\"\/><\/figure><\/div>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\"\/>\n\n\n\n<p>Flask Nas\u0131l Kurulur? dersi i\u00e7in yapaca\u011f\u0131n\u0131z <strong>yorumlar benim i\u00e7in \u00e7ok \u00f6nemli, yazmaktan \u00e7ekinmeyin.<\/strong><\/p>\n\n\n\n<p>T\u00fcm Kodlar: <strong><a rel=\"noreferrer noopener\" href=\"https:\/\/github.com\/furkanege\/depo-python\/blob\/master\/flask-yayinlama\" target=\"_blank\">GitHub<\/a><\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Flask Nas\u0131l Kurulur? Bu yaz\u0131mda Python Framework&#8217;u olan Flask ile \u00e7ok basit bir uygulama yapmay\u0131 ve bunu \u0130nternet&#8217;e, yani kanl\u0131 canl\u0131 bir sunucuya en kolay \u015fekilde at\u0131p orada \u00e7al\u0131\u015ft\u0131rmay\u0131\/yay\u0131nlamay\u0131 g\u00f6sterece\u011fim. \u00d6ncelikle size bir bilgisayar, buna kurulu python (linux veya mac&#8217;se zaten kurulu.), sitenizi yay\u0131nlaman\u0131z i\u00e7in bir sunucu (m\u00fckemmel olmak zorunda de\u011fil), sunucu kontrol\u00fc i\u00e7in biraz [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1813,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[697,695,696],"tags":[698,700,699],"class_list":["post-737","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-flask","category-programlama","category-python","tag-flask-nasil-kurulur","tag-flask-nedir","tag-python-flask-nedir"],"_links":{"self":[{"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/posts\/737","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/comments?post=737"}],"version-history":[{"count":2,"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/posts\/737\/revisions"}],"predecessor-version":[{"id":1943,"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/posts\/737\/revisions\/1943"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/media\/1813"}],"wp:attachment":[{"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/media?parent=737"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/categories?post=737"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/furkanege.com.tr\/blog\/wp-json\/wp\/v2\/tags?post=737"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}