草庐IT

升级到https

全部标签

ruby-on-rails - 让 Rails URL 助手自动输出 https url

我正在开发一个大量混合使用http和https的网站-使链接使用正确的路由协议(protocol)的最佳/最简单方法是什么-可以在路由文件中指定吗?假设我在Rails3中有以下路线。match"/test"=>"test#index",:as=>:test,:constraints=>{:protocol=>'https'}如果我在http页面上,并且我使用test_url(),它会输出http://domain.com/test.我要https://domain.com/test相反。我知道我可以使用test_url(:secure=>true),但那是重复逻辑。我知道我可以http

ruby-on-rails - 如果不存在,请将 https) 添加到 URL?

我在我的模型中使用这个正则表达式来验证用户提交的URL。我不想强制用户输入http部分,但如果它不存在,我想自己添加。validates:url,:format=>{:with=>/^((http|https):\/\/)?[a-z0-9]+([-.]{1}[a-z0-9]+).[a-z]{2,5}(:[0-9]{1,5})?(\/.)?$/ix,:message=>"isnotvalid"}知道我该怎么做吗?我对验证和正则表达式的经验很少.. 最佳答案 如果它不存在,使用前置过滤器添加它:before_validation:sma

ruby - 如何让 Sinatra 通过 HTTPS/SSL 工作?

正如标题所说,Google没有提供任何与此相关的有用信息。如何为Sinatra应用设置和配置HTTPS/SSL?如何创建HTTPS路由?我以前从未在我的应用程序中使用过HTTPS,也没有调整Rack或其他任何东西的经验,所以我很感谢详细的答案。 最佳答案 这似乎适合我:require'sinatra/base'require'webrick'require'webrick/https'require'openssl'CERT_PATH='/opt/myCA/server/'webrick_options={:Port=>8443,:

ruby-on-rails - 升级到 ruby​​ 1.9.2 后奇怪的无法要求配置/启动

我将我的ruby​​升级到1.9.2,现在当我尝试使用脚本/服务器启动Rails2.3.5应用程序时,出现此错误::29:in`require':nosuchfiletoload--script/../config/boot(LoadError)from:29:in`require'fromscript/server:2:in`'但是script/server:2看起来确实是正确的,并且文件config/boot.rb存在于正确的位置。 最佳答案 更简单,不需要修改所有脚本:代替:script/server调用:./script/s

ruby - 强制 bundle 安装使用 https ://instead of git://for GitHub-based gems

我正在尝试构建一个Rails项目,因为我正在使用的主机无法访问Internet的git://协议(protocol)(端口9418),我收到如下错误Fetchinggit://github.com/pivotal/jasmine.gitfatal:unabletoconnecttogithub.com:github.com[0:192.30.252.130]:errno=Connectionrefused运行bundleinstall时。GemFile中的相关行没有指定git://作为协议(protocol),它只是指向GitHub作为gem的源gem'jasmine',:github

ruby - 升级到 Rubygems 1.5.0 后,Bundler 抛出未初始化常量 Gem::SilentUI (NameError) 错误

我运行gemupdate--system以更新到Rubygems1.5.0,每次运行任何bundle命令后我得到:rvm/gems/ruby-1.8.7-p249/gems/bundler-1.0.9/lib/bundler/ui.rb:56:未初始化常量Gem::SilentUI(NameError)还有其他人遇到过这个问题吗? 最佳答案 更新到bundler1.0.10或更高版本(gemupdatebundler)。此问题已在更高版本中修复。 关于ruby-升级到Rubygems1.

ruby-on-rails - 从 Rails 3 升级到 Rails 3.1

关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭10年前。Improvethisquestion如何从Rails3升级到Rails3.1beta?

ruby - 使用 Net::HTTP.get 获取 https url

我正在尝试将Net::HTTP.get()用于httpsURL:@data=Net::HTTP.get(uri,Net::HTTP.https_default_port())但是,当我尝试打印结果时得到以下结果:can'tconvertURI::HTTPSintoString这是怎么回事?我正在使用Ruby1.8.7(OSX) 最佳答案 原答案:uri=URI.parse("https://example.com/some/path")http=Net::HTTP.new(uri.host,uri.port)http.use_ssl

ruby-on-rails - 如何使用 rvm 将我的 ruby​​ 1.9.2-p0 升级到最新的补丁级别?

我当前的ruby​​版本是ruby1.9.2p0(2010-08-18revision29036)[x86_64-darwin10.5.0]但我想使用rvm将它更新到最新的补丁级别。我该怎么做? 最佳答案 首先,通过运行rvmgetstable更新您的RVM安装。为确保您运行的是新的RVM版本,您需要运行rvmreload(或者只打开一个新终端)。完成后,您可以通过运行rvmlistknown要求RVM列出可安装的ruby​​版本。在输出中您现在应该看到:#MRIRubies...[ruby-]1.9.2[-p320]...补丁级别

ruby - 升级到 Capybara 2.0 后如何点击项目列表中的第一个链接?

在这种情况下如何点击第一个链接:AgreeAgreewithin".item"dofirst(:link,"Agree").clickend我得到这个错误:Capybara::Ambiguous:Ambiguousmatch,found2elementsmatchingcss".item"如果没有within我会得到这个错误:Failure/Error:first(:link,"Agree").clickNoMethodError:undefinedmethod`click'fornil:NilClass 最佳答案 你可以只使用:f