W Nginx, jaka jest różnica między zmiennymi $host
i $http_host
.
Odpowiedz
$host
to zmienna modułu Core.
$ host
Zmienna ta jest równa linii Host w nagłówku żądania lub nazwy serwera przetwarzania żądania jeśli nagłówek hosta nie jest dostępny.
Ta zmienna może mieć inną wartość niż $ http_host w takich przypadkach: : 1) gdy nagłówek wejściowy hosta jest nieobecny lub ma pustą wartość, host jest równy wartości dyrektywy nazwa_serwera; 2), gdy wartość hosta zawiera numer portu, $ host nie uwzględnia tego numeru portu. $ Wartość hosta jest zawsze pisana małymi literami od 0.8.17.
$http_host
jest również zmienną tego samego modułu, ale nie znajdziesz go z tej nazwy, ponieważ jest zdefiniowana ogólnie jako $http_HEADER
(ref).
$ http_HEADER
Wartość żądania HTTP nagłówka głowicy, kiedy przekształca się małymi literami i „kreski” przekształcone „do” podkreślenia, np $ http_user_agent, $ http_referer ...;
Podsumowując:
$http_host
równa zawsze nagłówekHTTP_HOST
żądania.$host
równa$http_host
, małymi literami i bez numeru portu (jeśli występuje), z wyjątkiem gdyHTTP_HOST
jest nieobecny lub jest pusta wartość. W takim przypadku$host
jest równy wartości dyrektywyserver_name
serwera, który przetworzył żądanie.
- 1. Jaka jest różnica między --hostem i --target w gcc?
- 2. Jaka jest różnica między "localhost" a "127.0.0.1"?
- 3. Jaka jest różnica między == a === w Verilog?
- 4. Jaka jest różnica między $ a a $$ a w php?
- 5. Różnica między uwsgi_pass a proxy_pass w Nginx?
- 6. Jaka jest różnica między Ember.computed.alias a Ember.binding?
- 7. Jaka jest różnica między pakietem a intencją?
- 8. Jaka jest różnica między krotką a kompresją?
- 9. Jaka jest różnica między uchwytem a wątkiem?
- 10. Jaka jest różnica między cancelBubble a stopPropagation?
- 11. Jaka jest różnica między HAVING a WHERE?
- 12. Jaka jest różnica między użytkownikiem a rolą?
- 13. Jaka jest różnica między StudlyCaps a CamelCase?
- 14. Jaka jest różnica między Const a Constant?
- 15. Jaka jest różnica między @Inject a @PersistenceContext?
- 16. Jaka jest różnica między preferredLocalization a preferredLanguage?
- 17. Jaka jest różnica między JavaBean a POJO?
- 18. Jaka jest różnica między podprocesiem.popen a podprocesią.run?
- 19. Jaka jest różnica między funkcjami a zamknięciami?
- 20. Jaka jest różnica między ramką a ramką?
- 21. Jaka jest różnica między hashowaniem a indeksowaniem?
- 22. Jaka jest różnica między UIViewController a UITableViewController
- 23. Jaka jest różnica między przyszłym a shared_future?
- 24. Jaka jest różnica między tasklet a workqueue
- 25. Jaka jest różnica między Listą a ArrayList?
- 26. Jaka jest różnica między PermGenem a Metaspace?
- 27. Jaka jest różnica między Dispatcher.BeginInvoke a Task.Factory.StartNew
- 28. Jaka jest różnica między SUMĄ a SUBTOTALEM?
- 29. jaka jest różnica między CONTENT_FILTER_URI a CONTENT_URI?
- 30. Jaka jest różnica między process.cwd() a __dirname?
$ host jest konkretnie ** pierwszą 'nazwa_serwera' ** zdefiniowaną w bieżącym bloku serwera. jeśli masz wiele 'nazwa_serwera', pojawi się tylko pierwsza. –
Prawda. W rzeczywistości dość typowe jest określenie: nazwa_serwera example.com www.example.com; – glarrain
możesz również mieć wiele dyrektyw 'nazwa_serwera'. jeśli masz pierwsze wyrażeń regularnych w pierwszym, staje się to '$ host', a wszelkiego rodzaju brzydkie rzeczy mogą się zdarzyć podczas przepisywania reguł. –