Nginx 测试环境配置,留做笔记
以下全是配置文件的配置,如果有疑问还请移步Nginx官网参考官方文档。
环境:
[root@CentOS6-M01 conf]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@CentOS6-M01 conf]# uname -r 2.6.32-696.18.7.el6.x86_64
[root@CentOS6-M01 conf]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.12.2
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-stream --with-stream_ssl_module
一、nginx.conf 配置
user nginx; pid /usr/local/nginx/logs/nginx.pid; worker_processes auto; events { use epoll; worker_connections 2048; multi_accept on; } http { server_tokens off; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; client_header_timeout 10; client_body_timeout 10; reset_timedout_connection on; send_timeout 10; limit_conn_zone $binary_remote_addr zone=addr:5m; limit_conn addr 100; include mime.types; default_type application/octet-stream; charset utf-8; gzip on; gzip_http_version 1.0; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; gzip_min_length 1000; gzip_comp_level 4; gzip_vary on; open_file_cache max=100000 inactive=20s; open_file_cache_min_uses 2; open_file_cache_valid 30s; open_file_cache_errors on; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; #access_log /usr/local/nginx/logs/access.log main; access_log off; error_log /usr/local/nginx/logs/error.log crit; include /usr/local/nginx/conf/http_hosts/*.conf; } include /usr/local/nginx/conf/tcp_hosts/*.conf;
二、http_hosts/test.conf 配置
upstream tomcat_test { #ip_hash; #固定session server 127.0.0.1:8080; } server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } location /tomcat { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://tomcat_test; proxy_redirect default; client_max_body_size 50m; } location /download { charset utf-8; root /data/; #alias /data/download/; if ($request_filename ~* ^.*?.(txt)$){ add_header Content-Disposition 'attachment'; add_header Content-Type: 'APPLICATION/OCTET-STREAM';} autoindex on; autoindex_exact_size off; autoindex_localtime on; access_log /usr/local/nginx/logs/download.log main; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } access_log /usr/local/nginx/logs/port-80-access.log main; }
三、 tcp_hosts/test.conf 配置
stream { upstream tcp_template { server 127.0.0.1:8888; } server { listen 443 ssl; proxy_pass tcp_template; #指定key 和 crt 地址 #ssl_certificate certs/my.crt; #ssl_certificate_key certs/my.key; ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; ssl_session_cache shared:SSL:20m; ssl_session_timeout 4h; ssl_handshake_timeout 30s; } server { listen 8889; proxy_pass tcp_template; } }