我是新手用nginx设置我自己的服务器所以原谅任何无知。我可能刚刚使用错误的搜索字词来查找我的问题的答案。
无论如何,我现在在机架空间的VPS上使用Rails 3,Nginx和Unicorn。在我的rails应用程序中,我有大约500mb的公共文件/我想使用Nginx来提供这些。通常这只是:
server {
listen 80 default deferred;
# server_name example.com;
root /home/<my_user>/apps/<my_app>/current/public;
...
}
如果我将500mb公开添加到git repo然后使用capistrano进行部署,我可以完成这项工作,但我不希望所有这些文件都在我的git repo中。将它们存储在那里是没有意义的,但如果我删除它们,那么每次部署时我都必须手动将它们上传到服务器上的公共文件夹。
有没有办法让Nginx指向服务器的第二个资产文件夹?我尝试了以下方法:
location /static {
gzip on;
alias /home/deployer/static/;
}
我没有运气这么做(试图通过url.com/static / ...访问文件)任何人都知道我做错了什么?
附注:所有显示的代码都在我的config / nginx.conf文件中,它应该在我的deploy.rb中通过这一行覆盖设置:
sudo "ln -nfs #{current_path}/config/nginx.conf /etc/nginx/sites-enabled/#{application}"
答案 0 :(得分:3)
location /static/ {
root /home/deployer;
}