nginx 配置管理 - 简单也复杂

发表于:2018-7-04 16:11

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:等你归去来    来源:博客园

  由于涉及到h5与后端交互,跨域问题,所以公司的开放测试服务器让我们自己搞nginx。顺便提升一下nginx的实践。
  nginx的安装,没什么难度了,百度一堆,如果源码安装就一步步来吧。(最简单的方式:yum install nginx (centos), apt-get install nginx(ubuntu))
  nginx.conf,作为最外层的配置文件,主要设置一些基础的配置就好了,如内存配置,日志格式配置,线程配置等,最后使用一个include conf.d/* 将其他配置文件包含进来即可。
  【nginx.conf 基础配置】
  user  nginx;
  worker_processes  auto;
  error_log  /data/var/log/nginx/error.log debug;
  #error_log  logs/error.log  notice;
  #error_log  logs/error.log  info;
  #pid        logs/nginx.pid;
  events {
  worker_connections  1024;
  }
  # load modules compiled as Dynamic Shared Object (DSO)
  #
  #dso {
  #    load ngx_http_fastcgi_module.so;
  #    load ngx_http_rewrite_module.so;
  #}
  http {
  include       mime.types;
  default_type  application/octet-stream;
  autoindex off;
  server_tokens off;
  server_names_hash_bucket_size 128;
  client_header_buffer_size 32k;
  large_client_header_buffers 4 32k;
  client_max_body_size 20m;
  client_body_buffer_size 256k;
  sendfile on;
  tcp_nopush     on;
  keepalive_timeout 60;
  tcp_nodelay on;
  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_buffer_size 128k;
  fastcgi_buffers 32 256k;
  fastcgi_busy_buffers_size 256k;
  fastcgi_temp_file_write_size 256k;
  gzip  on;
  gzip_disable "msie6";
  gzip_vary on;
  gzip_comp_level 2;
  gzip_min_length 1k;
  gzip_buffers 4 16k;
  gzip_http_version 1.1;
  gzip_types text/plain application/x-javascript text/css application/xml application/javascript;
  log_format main '$request_time $upstream_response_time $remote_addr - $upstream_addr [$time_local] '
  '"$host" "$request" $status $bytes_sent '
  '"$http_referer" "$http_user_agent" "$gzip_ratio" "$http_x_forwarded_for" - "$server_addr" ';
  access_log /data/var/log/nginx/access.log main;
  include conf.d/*.conf;
  }
  【conf.d/*, 具体的域名配置,http://】
  upstream 3ctest_x123_com {
  server 192.168.1.103:81;
  keepalive 8;
  }
  upstream mytest_x123_com {
  server 192.168.1.103:80;
  keepalive 8;
  }
  upstream 3capi_x123_com {
  server 192.168.1.103:9002;
  keepalive 8;
  }
  upstream yhapi_x123_com {
  server 192.168.1.103:8089;
  keepalive 8;
  }
  server {
  listen 80;
  server_name 3ctest.x123.com;
  location / {
  proxy_pass http://3ctest_x123_com;
  proxy_set_header Host $host;
  proxy_redirect off;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_connect_timeout 60;
  proxy_read_timeout 600;
  proxy_send_timeout 600;
  }
  }
  server {
  listen 80;
  server_name mytest.x123.com;
  location / {
  proxy_pass http://mytest_x123_com;
  proxy_set_header Host $host;
  proxy_redirect off;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_connect_timeout 60;
  proxy_read_timeout 600;
  proxy_send_timeout 600;
  }
  }
  server {
  listen 80;
  server_name 3capi.x123.com;
  location / {
  proxy_pass http://3capi_x123_com;
  proxy_set_header Host $host;
  proxy_redirect off;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_connect_timeout 60;
  proxy_read_timeout 600;
  proxy_send_timeout 600;
  }
  }
  server {
  listen 80;
  server_name yhapi.x123.com;
  location / {
  proxy_pass http://yhapi_x123_com;
  proxy_set_header Host $host;
  proxy_redirect off;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_connect_timeout 60;
  proxy_read_timeout 600;
  proxy_send_timeout 600;
  }
  }
  server {
  listen 80;
  server_name 192.168.1.22;
  location / {
  proxy_pass http://192.168.1.22;
  proxy_set_header Host $host;
  proxy_redirect off;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_connect_timeout 60;
  proxy_read_timeout 600;
  proxy_send_timeout 600;
  }
  }
  upstream 192.168.1.22 {
  server 192.168.1.22:88;
  keepalive 8;
  }

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号