{"title":"uWSGI와 함께 django를 사용하는 방법","version":"4.0","locale":"ko","docname":"howto/deployment/wsgi/uwsgi","url":"/ko/4.0/howto/deployment/wsgi/uwsgi/","canonical":"https://djangodocs.dev/ko/4.0/howto/deployment/wsgi/uwsgi/","summary":"uWSGI_은(는) 빠르고 자가 치료 및 개발/sysadmin 친화적인 애플리케이션 컨테이너 서버로, 순수 C로 코딩되어 있습니다. 더 보기 uWSGI 문서는 Django, nginx 및 uWSGI(다수의 배포 설정 중 하나)를 포함하는 ‘자습서’를 제공한다. 아래 문서는 Django를…","html":"<h1>uWSGI와 함께 django를 사용하는 방법<a class=\"heading-anchor\" href=\"#how-to-use-django-with-uwsgi\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>uWSGI_은(는) 빠르고 자가 치료 및 개발/sysadmin 친화적인 애플리케이션 컨테이너 서버로, 순수 C로 코딩되어 있습니다.</p>\n<aside class=\"admonition admonition-seealso\">\n<p class=\"admonition-title\">더 보기</p>\n<p>uWSGI 문서는 Django, nginx 및 uWSGI(다수의 배포 설정 중 하나)를 포함하는 ‘자습서’를 제공한다. 아래 문서는 Django를 uWSGI와 통합하는 방법에 초점을 맞추고 있습니다.</p>\n</aside>\n<section id=\"prerequisite-uwsgi\">\n<h2>전제 조건  : uWSGI<a class=\"heading-anchor\" href=\"#prerequisite-uwsgi\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>uWSGI 위키에는 여러 설치 절차가 설명되어 있다. Python 패키지 관리자 pip을 사용하면 단일 명령으로 uWSGI 버전을 설치할 수 있습니다. 예:</p>\n<div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code><span class=\"gp\"># </span>Install<span class=\"w\"> </span>current<span class=\"w\"> </span>stable<span class=\"w\"> </span>version.\n<span class=\"gp\">$ </span>python<span class=\"w\"> </span>-m<span class=\"w\"> </span>pip<span class=\"w\"> </span>install<span class=\"w\"> </span>uwsgi\n\n<span class=\"gp\"># </span>Or<span class=\"w\"> </span>install<span class=\"w\"> </span>LTS<span class=\"w\"> </span><span class=\"o\">(</span>long<span class=\"w\"> </span>term<span class=\"w\"> </span>support<span class=\"o\">)</span>.\n<span class=\"gp\">$ </span>python<span class=\"w\"> </span>-m<span class=\"w\"> </span>pip<span class=\"w\"> </span>install<span class=\"w\"> </span>https://projects.unbit.it/downloads/uwsgi-lts.tar.gz\n</code></pre></div>\n<section id=\"uwsgi-model\">\n<h3>uWSGI 모델<a class=\"heading-anchor\" href=\"#uwsgi-model\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>uWSGI operates on a client-server model. Your web server (e.g., nginx, Apache)\ncommunicates with a <code class=\"docutils literal notranslate\"><span class=\"pre\">django-uwsgi</span></code> “worker” process to serve dynamic content.</p>\n</section>\n<section id=\"configuring-and-starting-the-uwsgi-server-for-django\">\n<h3>Django용 uWSGI 서버 구성 및 시작<a class=\"heading-anchor\" href=\"#configuring-and-starting-the-uwsgi-server-for-django\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>uWSGI는 프로세스를 구성하는 다양한 방법을 지원합니다. uWSGI의 ‘구성 설명서’를 참조하십시오.</p>\n<p>다음은 uWSGI 서버를 시작하는 예제 명령입니다.</p>\n<div class=\"code-block\" data-language=\"bash\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>uwsgi<span class=\"w\"> </span>--chdir<span class=\"o\">=</span>/path/to/your/project<span class=\"w\"> </span><span class=\"se\">\\</span>\n<span class=\"w\">    </span>--module<span class=\"o\">=</span>mysite.wsgi:application<span class=\"w\"> </span><span class=\"se\">\\</span>\n<span class=\"w\">    </span>--env<span class=\"w\"> </span><span class=\"nv\">DJANGO_SETTINGS_MODULE</span><span class=\"o\">=</span>mysite.settings<span class=\"w\"> </span><span class=\"se\">\\</span>\n<span class=\"w\">    </span>--master<span class=\"w\"> </span>--pidfile<span class=\"o\">=</span>/tmp/project-master.pid<span class=\"w\"> </span><span class=\"se\">\\</span>\n<span class=\"w\">    </span>--socket<span class=\"o\">=</span><span class=\"m\">127</span>.0.0.1:49152<span class=\"w\"> </span><span class=\"se\">\\ </span><span class=\"w\">     </span><span class=\"c1\"># can also be a file</span>\n<span class=\"w\">    </span>--processes<span class=\"o\">=</span><span class=\"m\">5</span><span class=\"w\"> </span><span class=\"se\">\\ </span><span class=\"w\">                </span><span class=\"c1\"># number of worker processes</span>\n<span class=\"w\">    </span>--uid<span class=\"o\">=</span><span class=\"m\">1000</span><span class=\"w\"> </span>--gid<span class=\"o\">=</span><span class=\"m\">2000</span><span class=\"w\"> </span><span class=\"se\">\\ </span><span class=\"w\">        </span><span class=\"c1\"># if root, uwsgi can drop privileges</span>\n<span class=\"w\">    </span>--harakiri<span class=\"o\">=</span><span class=\"m\">20</span><span class=\"w\"> </span><span class=\"se\">\\ </span><span class=\"w\">                </span><span class=\"c1\"># respawn processes taking more than 20 seconds</span>\n<span class=\"w\">    </span>--max-requests<span class=\"o\">=</span><span class=\"m\">5000</span><span class=\"w\"> </span><span class=\"se\">\\ </span><span class=\"w\">          </span><span class=\"c1\"># respawn processes after serving 5000 requests</span>\n<span class=\"w\">    </span>--vacuum<span class=\"w\"> </span><span class=\"se\">\\ </span><span class=\"w\">                     </span><span class=\"c1\"># clear environment on exit</span>\n<span class=\"w\">    </span>--home<span class=\"o\">=</span>/path/to/virtual/env<span class=\"w\"> </span><span class=\"se\">\\ </span><span class=\"w\">  </span><span class=\"c1\"># optional path to a virtual environment</span>\n<span class=\"w\">    </span>--daemonize<span class=\"o\">=</span>/var/log/uwsgi/yourproject.log<span class=\"w\">      </span><span class=\"c1\"># background the process</span>\n</code></pre></div>\n<p>이것은 당신이 “mysite”라는 이름의 최고 수준의 프로젝트 패키지를 가지고 있고 그 안에 파일:mysite/wsgi라는 모듈이 있다고 가정한다.WSGI의 “응용프로그램”을 담고 있는 py. 최신 버전의 장고와 함께 <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">``</span></a>장고 관리 시작 프로젝트 my site” (내 사이트 대신 자신의 프로젝트 이름을 사용함)를 실행하면 이렇게 배치된다. 이 파일이 없으면 파일을 만들어야 합니다. 이 파일에 넣어야 하는 기본 내용과 파일에 추가할 수 있는 내용은 :doc:’/how to/deploy/wsgi/index’ 문서를 참조하십시오.</p>\n<p>여기서 Django별 옵션은 다음과 같습니다.</p>\n<ul class=\"simple\">\n<li><p>“치디르: Python의 가져오기 경로에 있어야 하는 디렉터리(즉, “mysite” 패키지를 포함하는 디렉터리)의 경로입니다.</p></li>\n<li><p>“말하자면: 사용할 WSGI 모듈 - 아마도 “내 사이트”일 것이다.假admin:’start project’가 만드는 wsgi² 모듈.</p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">env</span></code>: 최소한은  <span class=\"target\" id=\"index-2\"></span><a class=\"reference internal\" href=\"/ko/4.0/topics/settings/#envvar-DJANGO_SETTINGS_MODULE\"><code class=\"xref std std-envvar docutils literal notranslate\"><span class=\"pre\">DJANGO_SETTINGS_MODULE</span></code></a>. 을 포함해야 한다.</p></li>\n<li><p>“홈”: 프로젝트 가상 환경에 대한 옵션 경로입니다.</p></li>\n</ul>\n<p>ini 구성 파일의 예:</p>\n<div class=\"code-block\" data-language=\"bash\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code><span class=\"o\">[</span>uwsgi<span class=\"o\">]</span>\n<span class=\"nv\">chdir</span><span class=\"o\">=</span>/path/to/your/project\n<span class=\"nv\">module</span><span class=\"o\">=</span>mysite.wsgi:application\n<span class=\"nv\">master</span><span class=\"o\">=</span>True\n<span class=\"nv\">pidfile</span><span class=\"o\">=</span>/tmp/project-master.pid\n<span class=\"nv\">vacuum</span><span class=\"o\">=</span>True\nmax-requests<span class=\"o\">=</span><span class=\"m\">5000</span>\n<span class=\"nv\">daemonize</span><span class=\"o\">=</span>/var/log/uwsgi/yourproject.log\n</code></pre></div>\n<p>ini 구성 파일 사용 예:</p>\n<div class=\"code-block\" data-language=\"bash\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>uwsgi<span class=\"w\"> </span>--ini<span class=\"w\"> </span>uwsgi.ini\n</code></pre></div>\n<aside class=\"admonition-fixing-unicodeencodeerror-for-file-uploads admonition\">\n<p class=\"admonition-title\">파일 업로드를 위한 “유니코드 인코딩 오류” 수정</p>\n<p>비ASC 파일 이름을 가진 파일을 업로드할 때 “유니코드 인코딩 오류”가 발생하는 경우II 문자, “uwsgi”에 추가하여 uWSGI가 ASCII가 아닌 파일 이름을 허용하도록 구성되었는지 확인하십시오.이니:</p>\n<div class=\"code-block\" data-language=\"bash\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code><span class=\"nv\">env</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"nv\">LANG</span><span class=\"o\">=</span>en_US.UTF-8\n</code></pre></div>\n<p>자세한 내용은 유니코드 참조 안내서  <a class=\"reference internal\" href=\"/ko/4.0/ref/unicode/#unicode-files\"><span class=\"std std-ref\">Files</span></a> 의 섹션을 참조하십시오.</p>\n</aside>\n<p>uWSGI 작업자의 시작, 중지 및 재로드에 대한 내용은 uWSGI 프로세스 관리(uWSGI 프로세스 관리) 문서를 참조하십시오.</p>\n</section>\n</section>","rootId":"how-to-use-django-with-uwsgi","toc":[{"title":"전제 조건  : uWSGI","anchor":"prerequisite-uwsgi","children":[{"title":"uWSGI 모델","anchor":"uwsgi-model","children":[]},{"title":"Django용 uWSGI 서버 구성 및 시작","anchor":"configuring-and-starting-the-uwsgi-server-for-django","children":[]}]}],"breadcrumbs":[{"docname":"howto/index","title":"“How-to” 가이드","url":"/ko/4.0/howto/"},{"docname":"howto/deployment/index","title":"How to deploy Django","url":"/ko/4.0/howto/deployment/"},{"docname":"howto/deployment/wsgi/index","title":"WSGI를 사용하여 배포하는 방법","url":"/ko/4.0/howto/deployment/wsgi/"}],"prev":{"docname":"howto/deployment/wsgi/gunicorn","title":"Gunicorn과 함께 django 사용방법","url":"/ko/4.0/howto/deployment/wsgi/gunicorn/"},"next":{"docname":"howto/deployment/wsgi/modwsgi","title":"django와 아파치 사용법, mod_wsgi 사용법","url":"/ko/4.0/howto/deployment/wsgi/modwsgi/"},"formats":{"html":"/ko/4.0/howto/deployment/wsgi/uwsgi/","markdown":"/ko/4.0/howto/deployment/wsgi/uwsgi.md","json":"/ko/4.0/howto/deployment/wsgi/uwsgi.json"},"source":"https://github.com/django/django/blob/stable/4.0.x/docs/howto/deployment/wsgi/uwsgi.txt","official":"https://docs.djangoproject.com/ko/4.0/howto/deployment/wsgi/uwsgi/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11"],"inLocales":["en","zh-hans","fr","ja","id","it","pt-br","ko","es","el","pl"]}