2014-10-22 60 views
0

我在nginx上使用uwsgi运行我的DJango应用程序。 它当前与这些配置工作:Django-uWSGI-nginx使用https

[uwsgi] 插座=:8002

主=真

ENV = DJANGO_SETTINGS_MODULE = web_server.web_server.settings

PYTHONPATH =/TMP/src/

wsgi-file = /tmp/src/web_server/web_server/wsgi.py

CHDIR =/TMP/SRC/

过程= 4个

线程= 2

和我的nginx.conf文件

上游的django {

服务器127.0.0.1:8002;

}

服务器{

听8000;

server_name 192.168.56.104;

charset utf-8;

#最后,将所有非媒体请求Django的服务器。

位置/ {

uwsgi_pass django; 
    include  /tmp/src/web_server/web_server/uwsgi_params; 

}

它的工作与HTTP。

我想改变它以https工作,但我无法找到的配置,以使这项工作在任何地方的权利。

我应该在我的配置中更改以使用https?

我已经生成了证书。

+1

每个服务器设置和证书文件是要求略有不同。我会看看这个文档https://www.digicert.com/ssl-certificate-installation-nginx.htm,并发布特定的技术问题,如果你不能得到它的工作。 – 2014-10-22 12:07:55

+0

谢谢。那实际上解决了我的问题。 – ShlomiK 2014-10-22 12:33:37

+0

@ShlomiK如果您有解决方案,请将其作为答案发布。或者,如果您认为解决方案对您的情况过于具体,请删除该问题。谢谢。 – Louis 2014-10-22 16:22:30

回答

0

克里斯的评论帮助我找到了解决方案。 在SSL Certificate Installation in Nginx 你可以找到这样的:

SSL上;

ssl_certificate /etc/ssl/your_domain_name.pem; (或bundle.crt)

ssl_certificate_key的/ etc/SSL /您的域名。键;

我只是将它添加到我的nginx.conf文件中,并将https添加到我的Web服务器。因此最终.conf文件看起来像这样:

上游的django {

服务器127.0.0.1:8002;

}

服务器{

听8000;

ssl on;

ssl_certificate /etc/ssl/your_domain_name.pem; (或bundle.crt)

ssl_certificate_key /etc/ssl/your_domain_name.key;

server_name 192.168.56.104;

charset utf-8;

# Finally, send all non-media requests to the Django server. 

位置/ {

uwsgi_pass django; 

    include  /tmp/src/web_server/web_server/uwsgi_params; 

}