我的配置不允许对我的服务进行任何HTTP调用(强制https)。我需要只提供一个IP的HTTP访问权限,我不确定这样做的最佳方法是什么,或者是否可以使用NGINX。
这是我的配置:
server {
listen 80;
listen 443;
server_name myserver.com;
client_max_body_size 64M;
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;
ssl on;
ssl_certificate /com.crt;
ssl_certificate_key /com.key;
access_log /var/log/nginx/log.log custom;
if ($scheme = http) {
return 400 "Sceme not allowed - please use https (SSL)";
}
location / {
include proxy_params;
proxy_pass http://unix:/tmp/my.sock:/;
add_header Cache-Control private;
}
location /static/ {
root /var/www/myapp/root;
}
}
答案 0 :(得分:1)
您为端口80启用了SSL。您应该使用ssl
指令中的listen
参数并删除ssl on;
语句:
listen 80;
listen 443 ssl;
这允许非SSL端口80和SSL端口443。
有关详细信息,请参阅this document。