在rails中隐藏配置文件夹

时间:2014-04-27 12:46:37

标签: ruby-on-rails unicorn

我在unicornnginx

后面使用Rails 4.1

问题是,当在任一模式(开发/生产)中运行时,如果我请求:

http://my.example.com//config/database.yml

我只是下载文件。没问题!对于文件夹或子文件夹中的每个其他文件也会发生同样的情况。

不应该允许这样做。我一直试图找到一种方法来阻止它。

到目前为止,我已使用此行通过nginx进行管理:

rewrite ^/+config/.* / permanent;

但我想......不......我确信必须有一个Rails方法来做到这一点。你能告诉我吗?

感谢。

1 个答案:

答案 0 :(得分:3)

仅供参考,真正的rails应用程序只会从public目录加载。所有其他目标都不应存在于外部世界,因为它将通过public呈现。如果您看到this example

server {
    listen       80;
    server_name  example.com;
    root         /var/www/apps/example/current/public;
    index        index.html index.htm;

它从公共目录加载。也许你可以发布你的nginx配置来看看问题是什么?