title: Nginx配置文件详解
tags:

  • Linux
  • Nginx
    categories:
  • 运维
    date: 2019-06-25

完整示例

  1. # 使用的用户和组
  2. user www www;
  3. # 指定工作衍生进程数
  4. worker_processes 2;
  5. # 指定pid存放的路径,进程文件
  6. pid /var/run/nginx.pid;
  7. # [ debug | info | notice | warn | error | crit ]
  8. # 可以在下方直接使用 [debug | info | notice | warn | error | crit] 参数,日志级别,全局错误日志定义类型
  9. error_log /var/log/nginx.error_log info;
  10. events {
  11. # 允许的连接数(单个进程最大连接数,最大连接数=连接数*进程数)
  12. worker_connections 2000;
  13. # use [ kqueue | epoll | /dev/poll | select | poll ];
  14. # 参考事件模型,epoll模型是Linux2.6以上版本内核中高性能网络I/O模型,如果跑在FreeBSD上面,就用kqueue模型
  15. use kqueue;
  16. }
  17. http {
  18. # 文件扩展名与文件类型映射表
  19. include conf/mime.types;
  20. # 默认文件类型
  21. default_type application/octet-stream;
  22. log_format main '$remote_addr - $remote_user [$time_local] '
  23. '"$request" $status $bytes_sent '
  24. '"$http_referer" "$http_user_agent" '
  25. '"$gzip_ratio"';
  26. log_format download '$remote_addr - $remote_user [$time_local] '
  27. '"$request" $status $bytes_sent '
  28. '"$http_referer" "$http_user_agent" '
  29. '"$http_range" "$sent_http_content_range"';
  30. client_header_timeout 3m;
  31. client_body_timeout 3m;
  32. send_timeout 3m;
  33. client_header_buffer_size 1k;
  34. large_client_header_buffers 4 4k;
  35. gzip on;
  36. gzip_min_length 1100;
  37. gzip_buffers 4 8k;
  38. gzip_types text/plain;
  39. output_buffers 1 32k;
  40. postpone_output 1460;
  41. sendfile on;
  42. tcp_nopush on;
  43. tcp_nodelay on;
  44. send_lowat 12000;
  45. keepalive_timeout 75 20;
  46. #lingering_time 30;
  47. #lingering_timeout 10;
  48. #reset_timedout_connection on;
  49. server {
  50. listen one.example.com;
  51. server_name one.example.com www.one.example.com;
  52. access_log /var/log/nginx.access_log main;
  53. location / {
  54. proxy_pass http://127.0.0.1/;
  55. proxy_redirect off;
  56. proxy_set_header Host $host;
  57. proxy_set_header X-Real-IP $remote_addr;
  58. #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  59. client_max_body_size 10m;
  60. client_body_buffer_size 128k;
  61. client_body_temp_path /var/nginx/client_body_temp;
  62. proxy_connect_timeout 70;
  63. proxy_send_timeout 90;
  64. proxy_read_timeout 90;
  65. proxy_send_lowat 12000;
  66. proxy_buffer_size 4k;
  67. proxy_buffers 4 32k;
  68. proxy_busy_buffers_size 64k;
  69. proxy_temp_file_write_size 64k;
  70. proxy_temp_path /var/nginx/proxy_temp;
  71. charset koi8-r;
  72. }
  73. error_page 404 /404.html;
  74. location = /404.html {
  75. root /spool/www;
  76. }
  77. location /old_stuff/ {
  78. rewrite ^/old_stuff/(.*)$ /new_stuff/$1 permanent;
  79. }
  80. location /download/ {
  81. valid_referers none blocked server_names *.example.com;
  82. if ($invalid_referer) {
  83. #rewrite ^/ http://www.example.com/;
  84. return 403;
  85. }
  86. #rewrite_log on;
  87. # rewrite /download/*/mp3/*.any_ext to /download/*/mp3/*.mp3
  88. rewrite ^/(download/.*)/mp3/(.*)\..*$
  89. /$1/mp3/$2.mp3 break;
  90. root /spool/www;
  91. #autoindex on;
  92. access_log /var/log/nginx-download.access_log download;
  93. }
  94. location ~* \.(jpg|jpeg|gif)$ {
  95. root /spool/www;
  96. access_log off;
  97. expires 30d;
  98. }
  99. }
  100. }

相关

nginx 配置文件详解

完整例子

Nginx学习——Nginx基本配置

Nginx安装及配置文件 nginx.conf 详解