# -*- nginx -*- log_format wecat_log ' $remote_addr => $host | $request $status | [$time_iso8601] $request_uri $http_user_agent'; upstream wecat_socket { server 127.0.0.1:1452; # appserver_ip:ws_port } upstream wecat_http { server 127.0.0.1:1519; } server { server_name ~wecat.*; root /Users/Can/wecat/admin; index index.htm; # listen 80; listen 443 ssl; ssl_certificate /Users/Can/Projects/shopping/else/config/server.crt; ssl_certificate_key /Users/Can/Projects/shopping/else/config/server.key; ssl_prefer_server_ciphers on; location ~ /(-|\+|api)/(?.*) { access_log /Users/Can/Develop/nginx/wecat.txt wecat_log; proxy_pass http://wecat_http; # /$1?$args; add_header IP $remote_addr; add_header For SchoolServer; add_header X-Forwarde-For $proxy_add_x_forwarded_for; } location ~ /(:wechat|:admin)/.*$ { proxy_pass http://wecat_socket; add_header From "wecat"; proxy_read_timeout 1000d; # 1000 day proxy_send_timeout 1000d; # 1000 day proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; } location ~ ^/(lib|img)/ { root /Users/Can/wecat/; add_header Cache-Control "max-age=300000"; } location ~ ^/(?(avatar|brand|img)[^.]*)(\.(?png|jpg|jpeg|riff|gif))?$ { root /Users/Can/wecat/src; try_files /$name.$suffix /$name.png /$name.jpg /$name.jpeg /$name.svg /$name.gif /img/logo.png 405; } location ~ ^/[^.]*$ { try_files /index.htm 404; } location ~ ^/font { add_header Cache-Control "max-age=300000"; } location ~ ^/(?!(lib)) { # MUST write in the end!! # kill cache # add_header Last-Modified $date_gmt; # add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0'; # if_modified_since off; add_header Cache-Control "max-age=1000"; expires off; etag on; } } server { server_name ~wecat.*; listen 80; return 301 https://$host$request_uri; }