Por favor, não poste várias perguntas em uma.
O primeiro passo, quando você não sabe como algo funciona, é procurar pela documentação. No caso do nginx, as diretivas são exaustivamente explicadas através do índice da diretiva de documentação oficial .
-
Depende da natureza do bloco de localização. A ordem dos blocos de localização prefixados não é importante, mas a ordem dos blocos de localização regex é, desde que a primeira que corresponda ao URI da solicitação seja selecionada.
-
A ordem de diretivas de configuração não importa, exceto em alguns casos, como
if
blocks. As diretivas do Gzip não fazem parte delas. -
Na verdade,
ssl on
é a maneira antiga de fazer isso e o parâmetro de diretiva de escutassl
é o novo. O uso dessl on
força o bloco do servidor a aceitar HTTPS apenas enquanto o uso do parâmetro de diretiva de escuta permite manipular HTTP e HTTPs no mesmo bloco de servidor. -
Na verdade, você pediu explicitamente ao nginx para fazer isso. Outra maneira de obter o mesmo resultado é usar
return 301 https://domain.com$request_uri
. A regravar patten^(.*)
corresponde a todos os URIs e os captura. Em seguida, reescreve-os permanentemente (redirecionamento 301) parahttps://domain.com<uri>
. Consulte a documentação para entender como a diretiva de reescrita funciona se você estiver confuso. -
As perguntas com base em opinião não se encaixam nos padrões de SF.