我对Rails 5(beta1)有一个非常奇怪的问题,它阻止我安全地提交任何表单.
当在生产模式下运行Nginx(在Ubuntu 12.04上为1.4.6)反向代理后面解密SSL时,Rails拒绝我的CSRF令牌,说它们无效,尽管表格正在提交正确的令牌.
当我在Nginx中关闭SSL时,一切正常.
任何帮助,将不胜感激.
我有一个像这样的RSpec测试:
context 'test #EnvironmentFile= method' do
it 'compares the command generated with the expected command' do
knife = EnvironmentFromFile.new(@knife_cfg_file)
knife.environment_file=(@environment_file)
expect(knife.chef_cmd_to_s).to eql("C:/blah/blah/bin/knife environment from file MySampleEnvironment.json --config 'knife.rb'")
end
end
Run Code Online (Sandbox Code Playgroud)
现在,为了避免平台依赖,eql()中的预期消息应该是没有初始C:/ blah/blah/bin/part的子字符串.
我预期的消息应该是"来自文件MySampleEnvironment.json的刀环境--config'knock.rb'"
哪个应该与从knife.chef_cmd_to_s方法返回的实际消息匹配:"C:/ blah/blah/bin/knife环境来自文件MySampleEnvironment.json --config'knock.rb'"
我怎么做?Rspec匹配器用于什么?