<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Feb 28, 2020 at 1:23 PM Reinis Rozitis <<a href="mailto:r@roze.lv">r@roze.lv</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">> I have added the below server block in /etc/nginx/nginx.conf (<a href="https://paste.centos.org/view/raw/d5e90b98" rel="noreferrer" target="_blank">https://paste.centos.org/view/raw/d5e90b98</a>)<br>
> <br>
> server {<br>
>   listen       80;<br>
>    server_name  _;<br>
>    return       444;<br>
> }<br>
> <br>
> When i try to run the below curl call, I am still receiving 200 OK response. <br>
<br>
> #curl --verbose --header 'Host: <a href="http://www.example.com" rel="noreferrer" target="_blank">www.example.com</a>' <a href="https://developer-nonprod.example.com" rel="noreferrer" target="_blank">https://developer-nonprod.example.com</a><br>
> GET / HTTP/1.1<br>
> Host: <a href="http://www.example.com" rel="noreferrer" target="_blank">www.example.com</a><br>
> User-Agent: curl/7.64.1<br>
> Accept: */*<br>
<br>
If you are testing 'https'  then you have to add the  'listen 443;' to the catch all server{} block otherways it will only work for http requests.<br>
<br>
<br>
Also your pasted configuration has:<br>
<br>
server {<br>
    listen 80 default_server;<br>
<br>
    server_name <a href="http://developer-nonprod.example.com" rel="noreferrer" target="_blank">developer-nonprod.example.com</a>;<br>
    server_name_in_redirect off;<br>
    return 301 https://$host$request_uri;<br>
}<br>
<br>
<br>
server {<br>
    listen       80;<br>
    server_name  _;<br>
    return       444;<br>
}<br>
}<br>
<br>
In this case with non-defined Hosts (server_name's) the first server {} will be used since it has the default_server (and second is ignored)  and you'll always get the redirect. <br>
<br>
You could leave the existing http -> https redirect but then change the catch all to listen only on 443 .. so if there is no valid server_name definition the connection will be dropped.<br>
<br>
rr<br></blockquote><div><br></div><div>Hi  Reinis,</div><div><br></div><div>I have added the below server block <a href="https://paste.centos.org/view/0c6f3195">https://paste.centos.org/view/0c6f3195</a></div><div><br></div><div>server {<br>    listen 80 default_server;<br><br>    server_name <a href="http://developer-nonprod.example.com">developer-nonprod.example.com</a>;<br>    server_name_in_redirect off;<br>    return 301 https://$host$request_uri;<br>}<br>#  index index.html;<br><br>server {<br>    listen   443;<br>    server_name  _;<br>  #  server_name_in_redirect off;<br>    return       444;<br>}<br><br>}<br></div><div><br></div><div>It is still not working. I look forward to hearing from you and your help is highly appreciated.  Thanks in Advance.</div><div><br></div><div>Best Regards,</div><div><br></div><div>Kaushal</div></div></div>