Преветствую Генадий,<br><br>Как в таком случае можно оргонизовать редиерк в случае если человек ошибочно набрал в адрессной строке http вместо https?<font color="#888888"></font><br><br>Но основное условие это чтобы фронтэнд был не на 80 или 443 порту(они заняты уже).<br>
<br><div class="gmail_quote">2009/7/1 Gena Makhomed <span dir="ltr">&lt;<a href="mailto:gmm@csdoc.com">gmm@csdoc.com</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Tuesday, June 30, 2009 at 18:48:12, LinCore wrote:<br>
<br>
L&gt; Возникла необходимость сделать ssl бэкэнд с фонтэндом на основе<br>
L&gt; nginx, но используя нестандартный порт (например 8081).<br>
<br>
L&gt; Пример конфигурационого фаила:<br>
L&gt; cat nginx.conf<br>
<br>
L&gt;  server {<br>
<br>
L&gt;     listen       some_ip:8081;<br>
<br>
L&gt;     server_name some_name_tld;<br>
<br>
L&gt;     ssl          on;<br>
<br>
L&gt;     rewrite ^ https://$server_name:$server_port$request_uri redirect;<br>
<br>
[...]<br>
<br>
L&gt; И в такой конфигурации редирект который я использую не работает,<br>
L&gt; причем если фронтэнд повесить на 80 порт то всё начинает работать как надо.<br>
<br>
если в конфигурации написано listen some_ip:8081; ssl on;<br>
- то это уже &quot;http over ssl&quot;. ничего редиректить не надо.<br>
<br>
если попробовать обратиться по http-протоколу на https порт,<br>
<a href="http://example.com:443/" target="_blank">http://example.com:443/</a> то nginx вернет сообщение об ошибке:<br>
<br>
==============================================<br>
<br>
400 Bad Request<br>
<br>
The plain HTTP request was sent to HTTPS port<br>
<br>
==============================================<br>
<br>
поэтому для plain http нужно выделять отдельный порт,<br>
например, так: 80 - plain http, 443 - http over ssl.<br>
<br>
--<br>
Best regards,<br>
<font color="#888888"> Gena<br>
<br>
<br>
</font></blockquote></div><br>