虽然这些文件在开发过程中以及在本地计算机上进行生产时都处于开发阶段,但这些文件不在现场生产中投放。我收到一个404找不到的错误。其他一切工作正常。这些文件存在于应用程序(-approot- /公众)的公共目录未在生产环境中投放我的robots.txt和sitemap.xml.gz的Rails
我使用nginx
和unicorn
在直播服务器。我nginx/sites-available/default
文件:
upstream example.com {
server unix:/tmp/example.socket fail_timeout=0;
}
server {
listen 80 default;
server_name example.com www.example.com;
root /home/myuser/apps/example/current/public;
access_log /var/log/nginx/access.log;
rewrite_log on;
location/{
proxy_pass http://example.com;
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;
}
location ~ ^/(images|javascripts|stylesheets|assets|system)/ {
root /home/myuser/apps/example/current/public;
expires max;
break;
}
}
这对我不起作用,我不得不做'location〜^ /。+ \。(gz | txt)$ {}'。 –