草庐IT

Nginx系列之支持SSL认证

全部标签

ruby - 如何在像 nginx 这样的代理后面时在 rails 日志中记录真实的客户端 ip

问题我在两台服务器上安装了Rails3.2.15和机架1.4.5。第一个服务器是服务于静态Assets的nginx代理。第二台服务器是为Rails应用程序提供服务的unicorn。在Railsproduction.log中,我总是看到nginxIP地址(10.0.10.150)而不是我的客户端IP地址(10.0.10.62):StartedGET"/"for10.0.10.150at2013-11-2113:51:05+0000我想在日志中有真实的客户端IP。我们的设置HTTPheaderX-Forwarded-For和X-Real-IP在nginx中设置正确,我已经定义了10.0.1

ruby-on-rails - Ruby 2.1.0/2.1.1/2.1.2 不支持调试器 gem

我刚刚将我的RVMRuby安装升级到版本2.1.0并尝试捆绑安装时出现以下错误:Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension.Rubyversion2.1.0isnotsupported.***extconf.rbfailed***这个错误当然是不言自明的,但我想知道是否有办法让Debuggergem与最新版本的Ruby一起工作? 最佳答案 看起来1.6.5版增加了对Ruby2.1.0的支持。-按预期工作。更新:由于Ruby2.1.1已经发布,因此应该使用1.6

ruby - Objective-C 是否像 Ruby 一样支持 Mixin?

在Ruby中,有模块,您可以通过“混入”模块来扩展类。moduleMyModuledefprintoneprint"one"endendclassMyClassincludeMyModuleendtheOne=MyClass.newtheOne.printone>>one在Objective-C中,我发现我有一组常用的方法,我想要一些Class来“继承”。在不创建通用类并从该通用类派生所有内容的情况下,还有哪些其他方法可以实现这一目标? 最佳答案 不要脸的外挂:ObjectiveMixin它利用了Objective-C运行时在运行时

ruby - 在 Mac OS X 上为 VIM 安装 Ruby 支持

MacOSX10.6(SnowLeopard)预装了VIM(7.2版),这很棒。它还预装了Ruby(版本1.8.7),这也很棒。但是,我希望在VIM中使用Ruby自动完成功能。查找VIM版本(vim--version)显示-ruby(即未启用ruby​​支持)。如何为我的VIM安装启用ruby​​? 最佳答案 虽然可以构建和安装自己的Vim来替换预安装的版本,但我不推荐这样做。改用MacVim要容易得多:http://code.google.com/p/macvim/MacVim是一个对Mac非常友好的Vim版本,它已经内置了对Ru

ruby-on-rails - 如何配置 WEBrick 以在 Rails 中使用 SSL?

在Rails3之前,您可以修改脚本/服务器文件以添加SSL参数并告诉服务器命令使用WEBrick的HTTPS版本。现在所有这些脚本都消失了,有谁知道如何让它与Rails3或4一起工作? 最佳答案 虽然Rails4中的scripts目录消失了,但bin目录仍然存在。您可以通过编辑bin/rails脚本让WEBrick使用SSL证书。在Rails4和Ruby2.1.1上测试,使用rbenv安装。其中大部分来自thisblogpost和thisStackOverflowquestion.#!/usr/bin/envrubyrequire'

ruby - 如何在 Ubuntu 11.10 上使用 RVM 在 IRB 中获得 Readline 支持

我已经尝试了所有我能想到的方法来让它工作,但无济于事,所以我在这里请求有关如何调试的建议。首先,运行Ubuntu11.10已安装的rvm:$bash使用apt-get安装readline:$sudoapt-getinstalllibreadline-dev检查readline安装:$dpkg--get-selections|grepreadlinelib64readline-gplv2-devinstalllib64readline5installlibreadline-devinstalllibreadline5installlibreadline6installlibreadlin

ruby - Ruby 支持 unicode 吗?它是如何工作的?

我刚刚开始学习Ruby(最终转向RoR),但我刚刚被告知Ruby不支持unicode。是真的吗?Ruby程序员如何着手支持unicode? 最佳答案 您听到的内容已经过时并且(仅部分)适用于Ruby1.8或更早版本。最新的Ruby稳定版(1.9),支持不少于95种不同的字符编码(刚才在我的系统上统计)。这包括几乎所有已知的Unicode转换格式,包括UTF-8。Ruby的先前稳定版本(1.8)对UTF-8具有部分支持。如果您使用Rails,它会为您处理默认的UTF-8编码。如果您只需要了解UTF-8编码,那么Rails将无论您运行的

ruby-on-rails - OpenSSL::SSL::SSLError: SSL_connect SYSCALL returned=5 errno=0 state=SSLv3 read server hello A

下面的代码会产生以下错误:OpenSSL::SSL::SSLError:SSL_connectSYSCALLreturned=5errno=0state=SSLv3readserverhelloArequire'net/https'uri=URI.parse("https://.com")http=Net::HTTP.new(uri.host,uri.port)http.use_ssl=truehttp.ssl_version='SSLv3'http.get(uri.request_uri)知道为什么吗?我尝试了所有其他问题中提到的所有内容,仍然没有运气。Ruby1.9.3p484(2

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 - 如何在 ruby​​ 中通过 SSL 调用 HTTP POST 方法?

所以这是使用curl的请求:curl-XPOST-Hcontent-type:application/json-d"{\"credentials\":{\"username\":\"username\",\"key\":\"key\"}}"https://auth.api.rackspacecloud.com/v1.1/auth我一直在尝试使用ruby​​发出同样的请求,但我似乎无法让它工作。我也尝试了几个库,但我无法让它工作。这是我到目前为止所拥有的:uri=URI.parse("https://auth.api.rackspacecloud.com")http=Net::HTTP.