我已经设置了这样的nginx代理请求和发送Django请求到Apache和服务媒体本身。
以下文件我的设置:
Nginxconfiguration: /etc/nginx/nginx.conf
user www-data; worker_processes 1; error_log /var/log/nginx/error.log; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; access_log /var/log/nginx/access.log; sendfile on; tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; tcp_nodelay on; gzip on; include /etc/nginx/sites-enabled/*; } =====
ngnix代理/etc/nginx/proxy.conf
============ proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; ===========
Nginx服务器文件:/etc/nginx/sites-enabled/some-name.txt
========== server { listen 208.109.252.110:80; server_name netconf; autoindex on; access_log /home/site/server_logs/nginx_access.log; error_log /home/site/server_logs/nginx_error.log; location / { proxy_pass http://127.0.0.1:80/; include /etc/nginx/proxy.conf; } location /site_media/ { root /home/site/folder/static; } } ==========
Nginx非常好的代理请求,并传递给Apache,所需的请求,但不服务的媒体。 在最后一个服务器文件中,根本不提供site_media位置。 🙁
一切对我来说都是完美的。 哪里不对?
提前致谢。
添加这样的东西:
location ~* ^.+\.(jpg|jpeg|gif|png|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js|ico|swf)$ { root /home/site/folder/static; expires 7d;
然后您将拥有从不同地点交付的扩展名的文件。 你可以给不同的过期date和压缩等。
完整的文件将如下所示:
server { listen 208.109.252.110:80; server_name netconf; autoindex on; access_log /home/site/server_logs/nginx_access.log; error_log /home/site/server_logs/nginx_error.log; location / { proxy_pass http://127.0.0.1:80/; include /etc/nginx/proxy.conf; } location location ~* ^.+\.(jpg|jpeg|gif|png|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js|ico|swf)$ { root /home/site/folder/static; expires 7d; } }
您可能还想为文件添加更多选项。 查看以下链接,了解dynamic和静态内容以及一些总体安全问题的一些特殊选项。