代码中断后,我得到了以下错误。然后我使用ctl + c关闭服务器并确保没有进程运行ruby或rails。然而,当我尝试运行服务器时,它说同样的错误:
2017-01-03 13:08:24 +0600: HTTP parse error, malformed request (): #<Puma::HttpParserError: Invalid HTTP format, parsing fails.>
2017-01-03 13:08:24 +0600: ENV: {"rack.version"=>[1, 3], "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>true, "rack.multiprocess"=>false, "rack.run_once"=>false, "SCRIPT_NAME"=>"", "QUERY_STRING"=>"", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"puma 3.6.0 Sleepy Sunday Serenity", "GATEWAY_INTERFACE"=>"CGI/1.2"}
答案 0 :(得分:1)
以下是一些可能的解决方案。
确保您通过http://localhost:3000而不是https://localhost:3000进行连接。
如果浏览器重定向到HTTPS,请尝试清除浏览器缓存和Cookie。
如果浏览器仍然重定向到HTTPS并且是谷歌浏览器,请尝试解决HSTS问题的解决方案:https://stackoverflow.com/a/28586593
确保您没有强制HTTPS的生产环境(如果这就是您所服务的)。如果这是问题,请注释掉:
# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
config.force_ssl = true
答案 1 :(得分:0)
我在不小心访问 require 'digest'
def crack_PIN(hash)
md5 = Digest::MD5.new
permutations = [0,1,2,3,4,5,6,7,8,9].permutation(5).to_a
perm_digest = permutations.map{|element| md5.hexdigest(element.map{|num| "#{num}"}.join)}
x = perm_digest.index(hash)
permutations[x].map{|num| "#{num}"}.join
end
时遇到了这个问题,而我的 localhost 项目在 Nginx 中配置为在 localhost:3000
中有一个 TLS 证书和一个域名。