Nginx反向代理与服务器的配置缓冲

开发 前端
随着时代的进步科技的发展nginx反向代理也快速的提升与升级,下面我就对升级前和升级后的nginx反向代理,做一下自己的解析。希望能够对大家有帮助

Nginx反向代理关于对后端服务器的配置。对于广大的网管员来说nginx反向代理是必修的一门课。下面我们就来看看有关的内容。有三个后端服务,一个为web内容服务,一个是论坛服务,一个为文件服务。

当一个请求来时,nginx代理服务器其查看url把请求定向到相应的服务器,这个配置也缓冲文件服务的内容,但是论坛的和数据下载的内容就不缓存了,这个配置也使用了压缩,更好的节省内存

  1. #######################################################  
  2. ### Calomel.org /etc/nginx.conf BEGIN  
  3. #######################################################  
  4. pid /var/run/nginx.pid;  
  5. user nginx nginx;  
  6. worker_processes 10;  
  7. events {  
  8. worker_connections 1024;  
  9. }  
  10. http {  
  11. ## MIME types  
  12. #include /etc/nginx_mime.types;  
  13. default_type application/octet-stream;  
  14. ## Size Limits  
  15. client_body_buffer_size 128K;  
  16. client_header_buffer_size 128K;  
  17. client_max_body_size 1M;  
  18. large_client_header_buffers 1 1k;  
  19. ## Timeouts  
  20. client_body_timeout 60;  
  21. client_header_timeout 60;  
  22. expires 24h;  
  23. keepalive_timeout 60 60;  
  24. send_timeout 60;  
  25. ## General Options  
  26. ignore_invalid_headers on;  
  27. keepalive_requests 100;  
  28. limit_zone gulag $binary_remote_addr 5m;  
  29. recursive_error_pages on;  
  30. sendfile on;  
  31. server_name_in_redirect off;  
  32. server_tokens off;  
  33. ## TCP options  
  34. tcp_nodelay on;  
  35. tcp_nopush on;  
  36. ## Compression  
  37. gzip on;  
  38. gzip_buffers 16 8k;  
  39. gzip_comp_level 6;  
  40. gzip_http_version 1.0;  
  41. gzip_min_length 0;  
  42. gzip_types text/plain text/css image/x-icon application/x-perl 
    application/x-httpd-cgi;  
  43. gzip_vary on;  
  44. ## Log Format  
  45. log_format main '$remote_addr $host $remote_user [$time_local] 
    "$request" '  
  46. '$status $body_bytes_sent "$http_referer" "$http_user_agent" '  
  47. '"$gzip_ratio"';  
  48. ## Proxy options  
  49. proxy_buffering on;  
  50. proxy_cache_min_uses 3;  
  51. proxy_cache_path /usr/local/nginx/proxy_temp/ levels=1:2 
    keys_zone=cache:10m inactive=10m max_size=1000M;  
  52. proxy_cache_valid any 10m;  
  53. proxy_ignore_client_abort off;  
  54. proxy_intercept_errors on;  
  55. proxy_next_upstream error timeout invalid_header;  
  56. proxy_redirect off;  
  57. proxy_set_header X-Forwarded-For $remote_addr;  
  58. proxy_connect_timeout 60;  
  59. proxy_send_timeout 60;  
  60. proxy_read_timeout 60;  
  61. ## Backend servers (web1 is the primary and web2 will 
    come up if web1 is down)  
  62. upstream webbackend {  
  63. server web1.domain.lan weight=10 max_fails=3 fail_timeout=30s;  
  64. server web2.domain.lan weight=1 backup;  
  65. }  
  66. server {  
  67. access_log /var/log/nginx/access.log main;  
  68. error_log /var/log/nginx/error.log;  
  69. index index.html;  
  70. limit_conn gulag 50;  
  71. listen 127.0.0.1:80 default;  
  72. root /usr/local/nginx/html;  
  73. server_name _;  
  74. ## Only requests to our Host are allowed  
  75. if ($host !~ ^(mydomain.com|www.mydomain.com)$ ) {  
  76. return 444;  
  77. }  
  78. ## Only allow these request methods  
  79. if ($request_method !~ ^(GET|HEAD|POST)$ ) {  
  80. return 444;  
  81. }  
  82. ## Only allow these file types to document root  
  83. location / {  
  84. if ($request_uri ~* (^\/|\.html|\.jpg|\.pl|\.png|\.css|\.
    ico|robots\.txt)$ ) {  
  85. break;  
  86. }  
  87. return 444;  
  88. }  
  89. ## PROXY - Forum   
  90. location /forum/ {  
  91. proxy_pass http://forum.domain.lan/forum/;  
  92. }  
  93. ## PROXY - Data  
  94. location /files/ {  
  95. proxy_pass http://data.domain.lan/;  
  96. }  
  97. ## PROXY - Web  
  98. location / {  
  99. proxy_pass http://webbackend;  
  100. proxy_cache cache;  
  101. proxy_cache_valid 200 24h;  
  102. proxy_cache_use_stale error timeout invalid_header updating 
    http_500 http_502 http_503 http_504;  
  103. proxy_ignore_headers Expires Cache-Control;  
  104. }  
  105. ## All other errors get the generic error page  
  106. error_page 400 401 402 403 404 405 406 407 408 409 410 411 
    412 413 414 415 416 417  
  107. 500 501 502 503 504 505 506 507 /error_page.html;  
  108. location /error_page.html {  
  109. internal;  
  110. }  
  111. }  
  112. }  
  113. #  
  114. #######################################################  
  115. ### Calomel.org /etc/nginx.conf END  
  116. #######################################################  

Nginx反向代理的详细介绍,希望大家有所收获。

【编辑推荐】

  1. Nginx+PHP配置相关进程的简要介绍
  2. 修改Nginx php.ini文件的经典教程
  3. Nginx 启动脚本如何进行自动化启动
  4. nginx配置进行数据输出的两种方式
  5. Nginx Resin安装中的相关技巧和操作流程
责任编辑:张浩 来源: 互联网
相关推荐

2010-03-30 18:26:07

Nginx Web服务

2018-11-05 09:34:43

2019-04-08 08:39:47

Nginx代理服务器

2012-09-18 09:55:28

2019-04-03 11:22:06

NginxApacheweb服务器

2018-10-14 08:39:52

NginxTomcat服务器

2019-06-27 08:43:26

服务器Nginx反向代理

2022-07-01 07:33:24

nginx反向代理测试

2011-08-31 16:37:51

Nginx

2020-10-22 08:05:46

Nginx

2014-04-29 14:54:48

Nginx反向代理

2023-10-17 08:36:28

Nginx代理服务器

2009-02-28 14:23:02

2017-12-18 12:04:02

Nginx代理均衡

2012-04-02 14:31:06

nginx代理缓存

2018-04-17 12:10:40

2019-06-19 15:34:39

Nginx反向代理负载均衡

2019-10-22 10:20:13

Nginx反向代理服务器

2021-08-04 07:26:07

IIS服务器反向代理

2015-09-06 09:53:41

DockerWeave
点赞
收藏

51CTO技术栈公众号