是否可以在 Heroku 上设置 ***?

Posted

技术标签:

【中文标题】是否可以在 Heroku 上设置 ***?【英文标题】:Is it possible to setup a *** on Heroku? 【发布时间】:2010-12-16 03:18:32 【问题描述】:

是否可以在 heroku 上使用 open*** 设置 *** 以保持暂存环境的私密性?如果是这样,有人有文章或链接吗?

【问题讨论】:

【参考方案1】:

您无法使用 *** 执行此操作,但您可以使用密码保护站点的暂存实例。为此,您需要设置一个名为“staging”的新 Rails 环境,并在 ApplicationController 中包含以下内容:

class ApplicationController

  before_filter :password_protected if Rails.env.staging?

  protected

  def password_protected
    authenticate_or_request_with_http_basic do |username, password|
      username == "foo" && password == "bar"
    end
  end

end

然后您需要确保暂存实例的环境:

heroku config:add RACK_ENV=staging

【讨论】:

【参考方案2】:

不可能使用防火墙和 *** 在 heroku 上保护暂存环境。与 David 类似的带有 rails 3 的更清洁的解决方案(也很容易适用于 sinatra)是

# config/environments/staging.rb

MyApp::Application.configure do
  config.middleware.insert_after(::Rack::Lock, "::Rack::Auth::Basic", "Staging") do |u, p|
    [u, p] == ['username', 'password']
  end

 #... other config
end

我为此写了一个简短的blog post。

【讨论】:

以上是关于是否可以在 Heroku 上设置 ***?的主要内容,如果未能解决你的问题,请参考以下文章

在 Heroku 上部署 Django 应用程序:我可以在 .env 文件中手动设置环境变量吗?我需要安装 autoenv、heroku-config 等工具吗?

是否可以从 heroku 检索您的源代码?

在不重新启动应用程序的情况下设置 Heroku 环境变量

Heroku/Celery:一名工人同时执行任务?

我可以在 Heroku 上使用基于文件的数据库吗?

是否可以通过安装在 Heroku 上的不和谐机器人播放音乐/声音?