我正在尝试设置 nginx 来提供静态文件。基本上我需要的只是让http://mydomain.com/site_media/指向 /var/django/myproject/site_media。
我尝试了很多配置,当我测试它时,我总是收到静态文件的 404 错误。
谁能告诉我我做错了什么或者我应该如何设置?
这是我当前的 nginx 配置文件。
用户 www-data; worker_processes 1; #error_log /usr/local/nginx/logs/error.log; #pid /usr/local/nginx/logs/nginx.pid; 事件{ worker_connections 1024; 使用 epoll; } http { # 在这里枚举所有 Tornado 服务器 上游前端{ 服务器 127.0.0.1:8000; 服务器 127.0.0.1:8001; 服务器 127.0.0.1:8002; 服务器 127.0.0.1:8003; } 包括 mime.types; default_type 应用程序/八位字节流; #access_log /usr/local/nginx/logs/access.log; keepalive_timeout 65; proxy_read_timeout 200; 发送文件; tcp_nopush 开启; tcp_nodelay 开启; gzip 上; gzip_min_length 1000; gzip_proxyed 任何; gzip_types 文本/纯文本/html 文本/css 文本/xml 应用程序/x-javascript 应用程序/xml 应用程序/atom+xml 文本/javascript; proxy_next_upstream 错误; 服务器 { 听80; # 允许文件上传 client_max_body_size 50M; 位置 ^~ /site_media/ { root /var/django/myproject/site_media; 如果($query_string){ 最大到期; } } 位置 = /favicon.ico { 重写 (.*) /site_media/favicon.ico; } 位置 = /robots.txt { 重写 (.*) /site_media/robots.txt; } 地点 / { proxy_pass_header 服务器; proxy_set_header 主机 $http_host; proxy_redirect 关闭; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_pass http://frontends; } } #include /usr/local/nginx/sites-enabled/*; }
谢谢,
卡塔
小智 3
/var/django/myproject/site_media/site_media
我查看了 nginx 错误日志,发现它试图从--weird提供媒体服务/var/django/myproject/site_media
。
我更改root /var/django/myproject/site_media;
为root /var/django/myproject;
现在可以使用了。
:)
归档时间: |
|
查看次数: |
5000 次 |
最近记录: |