Django 如何禁止从ip地址访问我的站点+;使用nginx的端口?
我有一个django应用程序,gunicorn在端口2333上运行Django 如何禁止从ip地址访问我的站点+;使用nginx的端口?,django,nginx,gunicorn,Django,Nginx,Gunicorn,我有一个django应用程序,gunicorn在端口2333上运行 server { listen 80; server_name mydomain.com; location / { proxy_cache my_cache; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Real-IP $remote_addr;
server {
listen 80;
server_name mydomain.com;
location / {
proxy_cache my_cache;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:2333;
expires 30d;
}
现在我可以在address和mydomain.com上查看我的django应用程序了
但我不希望用户通过查看我的网站。如何允许nginx仅使用mydomain.com访问我的网站
我尝试过使用“服务器默认值”。它不起作用
server {
listen 2333 default;
server_name _;
return 500;
}
Nginx与此无关。您的Gunicorn(Django)应用程序正在端口2333上侦听。因此,您可以通过连接http://$SERVER:2333绕过nginx。即使您停止nginx,它也会工作
您需要做的是告诉gunicorn仅在本地主机上侦听,例如使用
--bind=127.0.0.1:2333
。然后端口2333将只接受来自本地网络接口的连接。您如何运行gunicorn?谢谢,我已将gunicorn设置为在bind 127.0.0.1:2333上运行,并且工作正常。