{"id":16314,"date":"2024-11-08T00:32:13","date_gmt":"2024-11-07T21:02:13","guid":{"rendered":"https:\/\/www.itpiran.net\/blog\/?p=16314"},"modified":"2024-11-08T00:32:13","modified_gmt":"2024-11-07T21:02:13","slug":"run-django-app-on-webhosting-or-managed-server","status":"publish","type":"post","link":"https:\/\/www.itpiran.net\/blog\/en\/tutorials\/run-django-app-on-webhosting-or-managed-server\/","title":{"rendered":"Running a Django application on Webhosting or Managed Server at Hetzner"},"content":{"rendered":"<h1 id=\"%d9%85%d9%82%d8%af%d9%85%d9%87\">\u0645\u0642\u062f\u0645\u0647<\/h1>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634\u060c \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Python Django \u0631\u0648\u06cc \u0633\u0631\u0648\u0631\u0647\u0627\u06cc Webhosting \u06cc\u0627 Managed Server \u0627\u0632 Hetzner \u0631\u0627 \u06cc\u0627\u062f \u062e\u0648\u0627\u0647\u06cc\u0645 \u06af\u0631\u0641\u062a. Django \u06cc\u06a9 \u0641\u0631\u06cc\u0645\u200c\u0648\u0631\u06a9 \u0648\u0628 \u067e\u0627\u06cc\u062a\u0648\u0646 \u0627\u0633\u062a. \u0628\u0647 \u0637\u0648\u0631 \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 \u0627\u06cc\u0646 \u0641\u0631\u06cc\u0645\u200c\u0648\u0631\u06a9 \u0631\u0648\u06cc WSGI (\u0648\u0627\u0633\u0637\u0647 \u0628\u06cc\u0646 \u0633\u0631\u0648\u0631 \u0648\u0628 \u0648 \u0628\u0631\u0646\u0627\u0645\u0647) \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u062f\u060c \u0627\u0645\u0627 mod_wsgi \u062f\u0631 \u0633\u0631\u0648\u0631 Apache \u0645\u062f\u06cc\u0631\u06cc\u062a\u200c\u0634\u062f\u0647 \u062f\u0631 \u062f\u0633\u062a\u0631\u0633 \u0646\u06cc\u0633\u062a. \u0628\u0627 \u0627\u06cc\u0646 \u062d\u0627\u0644\u060c \u0631\u0648\u0634\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641\u06cc \u0628\u0631\u0627\u06cc \u062a\u0628\u062f\u06cc\u0644 WSGI \u0628\u0647 \u0648\u0627\u0633\u0637\u200c\u0647\u0627\u06cc \u0633\u0627\u0632\u06af\u0627\u0631 \u062f\u06cc\u06af\u0631 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f.<\/p>\n<h5 id=\"%d9%be%db%8c%d8%b4%d9%86%db%8c%d8%a7%d8%b2%d9%87%d8%a7\">\u067e\u06cc\u0634\u200c\u0646\u06cc\u0627\u0632\u0647\u0627<\/h5>\n<ul>\n<li>Webhosting \u0628\u0627 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0627\u0632 SSH (\u0646\u0633\u062e\u0647 \u06f9 \u06cc\u0627 \u0628\u0627\u0644\u0627\u062a\u0631) \u06cc\u0627 Managed Server \u0628\u0627 \u062f\u0633\u062a\u0631\u0633\u06cc SSH \u0641\u0639\u0627\u0644.<\/li>\n<\/ul>\n<h2 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b1-%d9%86%d8%b5%d8%a8-%d9%88%d8%a7%d8%a8%d8%b3%d8%aa%da%af%db%8c%d9%87%d8%a7\">\u0645\u0631\u062d\u0644\u0647 \u06f1 &#8211; \u0646\u0635\u0628 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc\u200c\u0647\u0627<\/h2>\n<h5 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b1-%db%b1-%d9%86%d8%b5%d8%a8-%d9%88-%d9%81%d8%b9%d8%a7%d9%84%d8%b3%d8%a7%d8%b2%db%8c-virtualenv\">\u0645\u0631\u062d\u0644\u0647 \u06f1.\u06f1 &#8211; \u0646\u0635\u0628 \u0648 \u0641\u0639\u0627\u0644\u200c\u0633\u0627\u0632\u06cc virtualenv<\/h5>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>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<\/code><\/pre>\n<\/div>\n<h5 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b1-%db%b2-%d9%86%d8%b5%d8%a8-django\">\u0645\u0631\u062d\u0644\u0647 \u06f1.\u06f2 &#8211; \u0646\u0635\u0628 Django<\/h5>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>pip install django<\/code><\/pre>\n<\/div>\n<h5 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b1-%db%b3-%d9%86%d8%b5%d8%a8-flup-%d8%a7%d8%ae%d8%aa%db%8c%d8%a7%d8%b1%db%8c%d8%8c-%d8%a8%d8%b1%d8%a7%db%8c-fastcgi-%d8%b6%d8%b1%d9%88%d8%b1%db%8c-%d8%a7\">\u0645\u0631\u062d\u0644\u0647 \u06f1.\u06f3 &#8211; \u0646\u0635\u0628 Flup (\u0627\u062e\u062a\u06cc\u0627\u0631\u06cc\u060c \u0628\u0631\u0627\u06cc FastCGI \u0636\u0631\u0648\u0631\u06cc \u0627\u0633\u062a)<\/h5>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>pip install flup<\/code><\/pre>\n<\/div>\n<h2 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b2-%d8%a7%db%8c%d8%ac%d8%a7%d8%af-%d9%88-%d9%be%db%8c%da%a9%d8%b1%d8%a8%d9%86%d8%af%db%8c-%d9%be%d8%b1%d9%88%da%98%d9%87-django\">\u0645\u0631\u062d\u0644\u0647 \u06f2 &#8211; \u0627\u06cc\u062c\u0627\u062f \u0648 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u067e\u0631\u0648\u0698\u0647 Django<\/h2>\n<h5 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b2-%db%b1-%d8%b4%d8%b1%d9%88%d8%b9-%d9%be%d8%b1%d9%88%da%98%d9%87\">\u0645\u0631\u062d\u0644\u0647 \u06f2.\u06f1 &#8211; \u0634\u0631\u0648\u0639 \u067e\u0631\u0648\u0698\u0647<\/h5>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>mkdir \/usr\/home\/holu\/djangoprojects env -C \"\/usr\/home\/holu\/djangoprojects\" django-admin startproject example_com<\/code><\/pre>\n<\/div>\n<h5 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b2-%db%b2-%d9%be%db%8c%da%a9%d8%b1%d8%a8%d9%86%d8%af%db%8c-%d9%be%d8%b1%d9%88%da%98%d9%87\">\u0645\u0631\u062d\u0644\u0647 \u06f2.\u06f2 &#8211; \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u067e\u0631\u0648\u0698\u0647<\/h5>\n<p>\u062a\u0645\u0627\u0645 \u062f\u0627\u0645\u0646\u0647\u200c\u0647\u0627\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0634\u062f\u0647 \u0631\u0627 \u0628\u0647 \u0645\u062a\u063a\u06cc\u0631 <code>ALLOWED_HOSTS<\/code> \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062f\u0633\u062a\u0631\u0633\u06cc \u0627\u0645\u06a9\u0627\u0646\u200c\u067e\u0630\u06cc\u0631 \u0628\u0627\u0634\u062f.<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>vim \/home\/holu\/djangoprojects\/example_com\/example_com\/settings.py<\/code><\/pre>\n<\/div>\n<p>\u0628\u0627 \u0632\u062f\u0646 <code>i<\/code> \u0628\u0647 &#8220;\u062d\u0627\u0644\u062a \u0648\u0627\u0631\u062f \u06a9\u0631\u062f\u0646&#8221; \u0628\u0631\u0648\u06cc\u062f \u0648 \u062a\u0645\u0627\u0645 \u062f\u0627\u0645\u0646\u0647\u200c\u0647\u0627\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0634\u062f\u0647 \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-plain\" data-lang=\"Plain Text\"><code>ALLOWED_HOSTS = ['example.com']<\/code><\/pre>\n<\/div>\n<p>\u0628\u0627 \u0632\u062f\u0646 <code>esc<\/code> \u0628\u0647 &#8220;\u062d\u0627\u0644\u062a \u0641\u0631\u0645\u0627\u0646&#8221; \u0628\u0631\u06af\u0634\u062a\u0647 \u0648 <code>:wq<\/code> \u0631\u0627 \u0628\u0631\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u0648 \u062e\u0631\u0648\u062c \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<h2 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b3-%d8%a2%d9%85%d8%a7%d8%af%d9%87%d8%b3%d8%a7%d8%b2%db%8c-%d8%b1%db%8c%d8%b4%d9%87-%d8%b3%d9%86%d8%af-%d8%b3%d8%b1%d9%88%d8%b1-%d9%88%d8%a8\">\u0645\u0631\u062d\u0644\u0647 \u06f3 &#8211; \u0622\u0645\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0631\u06cc\u0634\u0647 \u0633\u0646\u062f \u0633\u0631\u0648\u0631 \u0648\u0628<\/h2>\n<p>\u06cc\u06a9 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u0648\u0628\u200c\u0633\u0627\u06cc\u062a \u062e\u0627\u0644\u06cc \u0628\u0633\u0627\u0632\u06cc\u062f \u0648 \u0631\u06cc\u0634\u0647 \u0633\u0646\u062f \u0631\u0627 \u062f\u0631 konsoleH \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f.<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>mkdir -p \/usr\/home\/holu\/public_html\/example_com<\/code><\/pre>\n<\/div>\n<h5 id=\"%da%af%d8%b2%db%8c%d9%86%d9%87-%db%b1-fastcgi\">\u06af\u0632\u06cc\u0646\u0647 \u06f1 &#8211; FastCGI<\/h5>\n<p>\u0627\u06cc\u062c\u0627\u062f .htaccess<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>vim \/usr\/home\/holu\/public_html\/example_com\/.htaccess<\/code><\/pre>\n<\/div>\n<p>\u0628\u0627 \u0632\u062f\u0646 <code>i<\/code> \u0628\u0647 &#8220;\u062d\u0627\u0644\u062a \u0648\u0627\u0631\u062f \u06a9\u0631\u062f\u0646&#8221; \u0628\u0631\u0648\u06cc\u062f \u0648 \u0645\u062d\u062a\u0648\u0627\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-plain\" data-lang=\"Plain Text\"><code>&lt;IfModule mod_rewrite.c&gt;\r\nRewriteEngine On\r\nRewriteBase \/\r\nRewriteCond %{REQUEST_FILENAME} !-f\r\nRewriteRule ^(.*)$ djangoapp.fcgi\/$1 [QSA,L]\r\n&lt;\/IfModule&gt;<\/code><\/pre>\n<\/div>\n<p>\u0628\u0627 \u0632\u062f\u0646 <code>esc<\/code> \u0628\u0647 &#8220;\u062d\u0627\u0644\u062a \u0641\u0631\u0645\u0627\u0646&#8221; \u0628\u0631\u06af\u0634\u062a\u0647 \u0648 <code>:wq<\/code> \u0631\u0627 \u0628\u0631\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u0648 \u062e\u0631\u0648\u062c \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u0627\u06cc\u062c\u0627\u062f \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a .fcgi<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>vim \/usr\/home\/holu\/public_html\/example_com\/djangoapp.fcgi<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-python\" data-lang=\"Python\"><code>#!\/usr\/home\/holu\/virtualenvs\/example_com\/bin\/python\r\nimport sys\r\nimport os\r\nimport django\r\nfrom flup.server.fcgi import WSGIServer\r\nfrom django.core.handlers.wsgi import WSGIHandler\r\nsys.path.append(\"\/usr\/home\/holu\/djangoprojects\/example_com\")\r\nos.environ['DJANGO_SETTINGS_MODULE']=\"example_com.settings\"\r\ndjango.setup(set_prefix=False)\r\nWSGIServer(WSGIHandler()).run()<\/code><\/pre>\n<\/div>\n<p>\u0645\u062c\u0648\u0632 \u0627\u062c\u0631\u0627\u06cc\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u0627\u0644\u06a9 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>chmod 744 \/usr\/home\/holu\/public_html\/example_com\/djangoapp.fcgi<\/code><\/pre>\n<\/div>\n<h5 id=\"%da%af%d8%b2%db%8c%d9%86%d9%87-%db%b2-cgi\">\u06af\u0632\u06cc\u0646\u0647 \u06f2 &#8211; CGI<\/h5>\n<p>\u0627\u06cc\u062c\u0627\u062f .htaccess<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>vim \/usr\/home\/holu\/public_html\/example_com\/.htaccess<\/code><\/pre>\n<\/div>\n<p>\u0628\u0627 \u0632\u062f\u0646 <code>i<\/code> \u0628\u0647 &#8220;\u062d\u0627\u0644\u062a \u0648\u0627\u0631\u062f \u06a9\u0631\u062f\u0646&#8221; \u0628\u0631\u0648\u06cc\u062f \u0648 \u0645\u062d\u062a\u0648\u0627\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-plain\" data-lang=\"Plain Text\"><code>&lt;IfModule mod_rewrite.c&gt;\r\nRewriteEngine On\r\nRewriteBase \/\r\nRewriteCond %{REQUEST_FILENAME} !-f\r\nRewriteRule ^(.*)$ djangoapp.cgi\/$1 [QSA,L]\r\n&lt;\/IfModule&gt;<\/code><\/pre>\n<\/div>\n<p>\u0628\u0627 \u0632\u062f\u0646 <code>esc<\/code> \u0628\u0647 &#8220;\u062d\u0627\u0644\u062a \u0641\u0631\u0645\u0627\u0646&#8221; \u0628\u0631\u06af\u0634\u062a\u0647 \u0648 <code>:wq<\/code> \u0631\u0627 \u0628\u0631\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u0648 \u062e\u0631\u0648\u062c \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u0627\u06cc\u062c\u0627\u062f \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a .cgi<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>vim \/usr\/home\/holu\/public_html\/example_com\/djangoapp.cgi<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-python\" data-lang=\"Python\"><code>#!\/usr\/home\/holu\/virtualenvs\/example_com\/bin\/python\r\nimport sys\r\nimport os\r\nimport django\r\nimport wsgiref.handlers\r\nfrom django.core.handlers.wsgi import WSGIHandler\r\nsys.path.append(\"\/usr\/home\/holu\/djangoprojects\/example_com\")\r\nos.environ['DJANGO_SETTINGS_MODULE']=\"example_com.settings\"\r\ndjango.setup(set_prefix=False)\r\nwsgiref.handlers.CGIHandler().run(WSGIHandler())<\/code><\/pre>\n<\/div>\n<p>\u0645\u062c\u0648\u0632 \u0627\u062c\u0631\u0627\u06cc\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u0627\u0644\u06a9 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>chmod 744 \/usr\/home\/holu\/public_html\/example_com\/djangoapp.cgi<\/code><\/pre>\n<\/div>\n<h2 id=\"%d9%85%d8%b1%d8%ad%d9%84%d9%87-%db%b4-%d8%a2%d8%b2%d9%85%d8%a7%db%8c%d8%b4\">\u0645\u0631\u062d\u0644\u0647 \u06f4 &#8211; \u0622\u0632\u0645\u0627\u06cc\u0634<\/h2>\n<p>\u0628\u0631\u0627\u06cc \u0622\u0632\u0645\u0627\u06cc\u0634\u060c \u062f\u0627\u0645\u0646\u0647 \u062e\u0648\u062f \u0631\u0627 \u0628\u0627\u0632\u062f\u06cc\u062f \u06a9\u0646\u06cc\u062f. \u0634\u0645\u0627 \u0628\u0627\u06cc\u062f \u0686\u06cc\u0632\u06cc \u0634\u0628\u06cc\u0647 \u0628\u0647 \u062a\u0635\u0648\u06cc\u0631 \u0632\u06cc\u0631 \u0628\u0628\u06cc\u0646\u06cc\u062f:<strong><\/strong><\/p>\n<p><img  loading=\"lazy\"  decoding=\"async\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=\"  alt=\"\"  width=\"623\"  height=\"388\"  class=\"aligncenter wp-image-16315 size-full pk-lazyload\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 623px) 100vw, 623px\"  data-pk-src=\"https:\/\/cdn.itpiran.net\/2024\/11\/08001548\/1-3.png\"  data-pk-srcset=\"https:\/\/cdn.itpiran.net\/2024\/11\/08001548\/1-3.png 623w, https:\/\/cdn.itpiran.net\/2024\/11\/08001548\/1-3-300x187.png 300w, https:\/\/cdn.itpiran.net\/2024\/11\/08001548\/1-3-110x69.png 110w, https:\/\/cdn.itpiran.net\/2024\/11\/08001548\/1-3-200x125.png 200w, https:\/\/cdn.itpiran.net\/2024\/11\/08001548\/1-3-380x237.png 380w, https:\/\/cdn.itpiran.net\/2024\/11\/08001548\/1-3-255x159.png 255w, https:\/\/cdn.itpiran.net\/2024\/11\/08001548\/1-3-550x343.png 550w\" ><\/p>\n<h2 id=\"%d9%86%d8%aa%db%8c%d8%ac%d9%87\">\u0646\u062a\u06cc\u062c\u0647\u200c<\/h2>\n<p>\u062d\u0627\u0644 \u0634\u0645\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627\u06cc Django \u062e\u0648\u062f \u0631\u0627 \u0631\u0648\u06cc \u0633\u06cc\u0633\u062a\u0645\u200c\u0639\u0627\u0645\u0644 \u0645\u062f\u06cc\u0631\u06cc\u062a\u200c\u0634\u062f\u0647 \u0645\u0633\u062a\u0642\u0631 \u06a9\u0646\u06cc\u062f.<\/p>\n","protected":false},"excerpt":{"rendered":"Introduction In this tutorial, we will show you how to run a Python Django application on Hetzner Webhosting or Managed Server servers.","protected":false},"author":1,"featured_media":16316,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_focuskw":"\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner","_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"","_yoast_wpseo_canonical":"","_yoast_wpseo_opengraph-description":"","_yoast_wpseo_opengraph-image":"","_yoast_wpseo_twitter-description":"","_yoast_wpseo_twitter-image":"","_yoast_wpseo_focuskeywords":"","_yoast_wpseo_primary_category":"193","footnotes":""},"categories":[193,363],"tags":[434],"class_list":{"0":"post-16314","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-tutorials","8":"category-programming","9":"tag-django"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner - \u0628\u0644\u0627\u06af ITPiran<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.itpiran.net\/blog\/en\/tutorials\/run-django-app-on-webhosting-or-managed-server\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner - \u0628\u0644\u0627\u06af ITPiran\" \/>\n<meta property=\"og:description\" content=\"\u0645\u0642\u062f\u0645\u0647 \u062f\u0631 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634\u060c \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Python Django \u0631\u0648\u06cc \u0633\u0631\u0648\u0631\u0647\u0627\u06cc Webhosting \u06cc\u0627 Managed Server \u0627\u0632 Hetzner \u0631\u0627&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.itpiran.net\/blog\/en\/tutorials\/run-django-app-on-webhosting-or-managed-server\/\" \/>\n<meta property=\"og:site_name\" content=\"\u0628\u0644\u0627\u06af ITPiran\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-07T21:02:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.itpiran.net\/2024\/11\/08002902\/django.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1793\" \/>\n\t<meta property=\"og:image:height\" content=\"1110\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#\\\/schema\\\/person\\\/04ed27b919baca468a2273f8e4318f81\"},\"headline\":\"\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner\",\"datePublished\":\"2024-11-07T21:02:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/\"},\"wordCount\":46,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/cdn.itpiran.net\\\/2024\\\/11\\\/08002902\\\/django.jpg\",\"keywords\":[\"Django\"],\"articleSection\":[\"\u0622\u0645\u0648\u0632\u0634\u06cc\",\"\u0628\u0631\u0646\u0627\u0645\u0647 \u0646\u0648\u06cc\u0633\u06cc\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/\",\"url\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/\",\"name\":\"\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner - \u0628\u0644\u0627\u06af ITPiran\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/cdn.itpiran.net\\\/2024\\\/11\\\/08002902\\\/django.jpg\",\"datePublished\":\"2024-11-07T21:02:13+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/#primaryimage\",\"url\":\"https:\\\/\\\/cdn.itpiran.net\\\/2024\\\/11\\\/08002902\\\/django.jpg\",\"contentUrl\":\"https:\\\/\\\/cdn.itpiran.net\\\/2024\\\/11\\\/08002902\\\/django.jpg\",\"width\":1793,\"height\":1110},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/tutorials\\\/run-django-app-on-webhosting-or-managed-server\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u0622\u0645\u0648\u0632\u0634\u06cc\",\"item\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/category\\\/tutorials\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/\",\"name\":\"\u0628\u0644\u0627\u06af ITPiran\",\"description\":\"\u0627\u062e\u0628\u0627\u0631 \u0648 \u0645\u0642\u0627\u0644\u0627\u062a \u062a\u062c\u0627\u0631\u062a \u067e\u0627\u06cc\u062f\u0627\u0631 \u0627\u06cc\u0631\u0627\u0646\u06cc\u0627\u0646\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#organization\",\"name\":\"\u0628\u0644\u0627\u06af \u062a\u062c\u0627\u0631\u062a \u067e\u0627\u06cc\u062f\u0627\u0631 \u0627\u06cc\u0631\u0627\u0646\u06cc\u0627\u0646\",\"alternateName\":\"ITPIran Blog\",\"url\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/cdn.itpiran.net\\\/2023\\\/12\\\/27150508\\\/cropped-ITPIRAN-BLOG-LOGO-2.png\",\"contentUrl\":\"https:\\\/\\\/cdn.itpiran.net\\\/2023\\\/12\\\/27150508\\\/cropped-ITPIRAN-BLOG-LOGO-2.png\",\"width\":512,\"height\":512,\"caption\":\"\u0628\u0644\u0627\u06af \u062a\u062c\u0627\u0631\u062a \u067e\u0627\u06cc\u062f\u0627\u0631 \u0627\u06cc\u0631\u0627\u0646\u06cc\u0627\u0646\"},\"image\":{\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/#\\\/schema\\\/person\\\/04ed27b919baca468a2273f8e4318f81\",\"name\":\"admin\",\"url\":\"https:\\\/\\\/www.itpiran.net\\\/blog\\\/en\\\/author\\\/admin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Running a Django Application on Webhosting or Managed Server at Hetzner - ITPiran Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.itpiran.net\/blog\/en\/tutorials\/run-django-app-on-webhosting-or-managed-server\/","og_locale":"en_US","og_type":"article","og_title":"\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner - \u0628\u0644\u0627\u06af ITPiran","og_description":"\u0645\u0642\u062f\u0645\u0647 \u062f\u0631 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634\u060c \u0646\u062d\u0648\u0647 \u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Python Django \u0631\u0648\u06cc \u0633\u0631\u0648\u0631\u0647\u0627\u06cc Webhosting \u06cc\u0627 Managed Server \u0627\u0632 Hetzner \u0631\u0627&hellip;","og_url":"https:\/\/www.itpiran.net\/blog\/en\/tutorials\/run-django-app-on-webhosting-or-managed-server\/","og_site_name":"\u0628\u0644\u0627\u06af ITPiran","article_published_time":"2024-11-07T21:02:13+00:00","og_image":[{"width":1793,"height":1110,"url":"https:\/\/cdn.itpiran.net\/2024\/11\/08002902\/django.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/#article","isPartOf":{"@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/"},"author":{"name":"admin","@id":"https:\/\/www.itpiran.net\/blog\/#\/schema\/person\/04ed27b919baca468a2273f8e4318f81"},"headline":"\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner","datePublished":"2024-11-07T21:02:13+00:00","mainEntityOfPage":{"@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/"},"wordCount":46,"commentCount":0,"publisher":{"@id":"https:\/\/www.itpiran.net\/blog\/#organization"},"image":{"@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn.itpiran.net\/2024\/11\/08002902\/django.jpg","keywords":["Django"],"articleSection":["\u0622\u0645\u0648\u0632\u0634\u06cc","\u0628\u0631\u0646\u0627\u0645\u0647 \u0646\u0648\u06cc\u0633\u06cc"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/","url":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/","name":"Running a Django Application on Webhosting or Managed Server at Hetzner - ITPiran Blog","isPartOf":{"@id":"https:\/\/www.itpiran.net\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/#primaryimage"},"image":{"@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn.itpiran.net\/2024\/11\/08002902\/django.jpg","datePublished":"2024-11-07T21:02:13+00:00","breadcrumb":{"@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/#primaryimage","url":"https:\/\/cdn.itpiran.net\/2024\/11\/08002902\/django.jpg","contentUrl":"https:\/\/cdn.itpiran.net\/2024\/11\/08002902\/django.jpg","width":1793,"height":1110},{"@type":"BreadcrumbList","@id":"https:\/\/www.itpiran.net\/blog\/tutorials\/run-django-app-on-webhosting-or-managed-server\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.itpiran.net\/blog\/"},{"@type":"ListItem","position":2,"name":"\u0622\u0645\u0648\u0632\u0634\u06cc","item":"https:\/\/www.itpiran.net\/blog\/category\/tutorials\/"},{"@type":"ListItem","position":3,"name":"\u0627\u062c\u0631\u0627\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 Django \u0628\u0631 \u0631\u0648\u06cc Webhosting \u06cc\u0627 Managed Server \u062f\u0631 Hetzner"}]},{"@type":"WebSite","@id":"https:\/\/www.itpiran.net\/blog\/#website","url":"https:\/\/www.itpiran.net\/blog\/","name":"ITPiran Blog","description":"Iranian Sustainable Trade News and Articles","publisher":{"@id":"https:\/\/www.itpiran.net\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.itpiran.net\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.itpiran.net\/blog\/#organization","name":"Sustainable Iranian Business Blog","alternateName":"ITPIran Blog","url":"https:\/\/www.itpiran.net\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.itpiran.net\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cdn.itpiran.net\/2023\/12\/27150508\/cropped-ITPIRAN-BLOG-LOGO-2.png","contentUrl":"https:\/\/cdn.itpiran.net\/2023\/12\/27150508\/cropped-ITPIRAN-BLOG-LOGO-2.png","width":512,"height":512,"caption":"\u0628\u0644\u0627\u06af \u062a\u062c\u0627\u0631\u062a \u067e\u0627\u06cc\u062f\u0627\u0631 \u0627\u06cc\u0631\u0627\u0646\u06cc\u0627\u0646"},"image":{"@id":"https:\/\/www.itpiran.net\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.itpiran.net\/blog\/#\/schema\/person\/04ed27b919baca468a2273f8e4318f81","name":"admin","url":"https:\/\/www.itpiran.net\/blog\/en\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/posts\/16314","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/comments?post=16314"}],"version-history":[{"count":2,"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/posts\/16314\/revisions"}],"predecessor-version":[{"id":16318,"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/posts\/16314\/revisions\/16318"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/media\/16316"}],"wp:attachment":[{"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/media?parent=16314"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/categories?post=16314"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.itpiran.net\/blog\/en\/wp-json\/wp\/v2\/tags?post=16314"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}