Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Ruby on Rails AWS Opworks造成编码不兼容utf-8和ascii-8bit_Ruby On Rails_Amazon Web Services_Encoding_Utf 8_Incompatibility - Fatal编程技术网

Ruby on rails Ruby on Rails AWS Opworks造成编码不兼容utf-8和ascii-8bit

Ruby on rails Ruby on Rails AWS Opworks造成编码不兼容utf-8和ascii-8bit,ruby-on-rails,amazon-web-services,encoding,utf-8,incompatibility,Ruby On Rails,Amazon Web Services,Encoding,Utf 8,Incompatibility,我有一些代码通过DNS在数据库中查找域,以获取SPF和DMARC记录-该代码在cloud9上完美运行,但当部署到使用Op works创建的AWS上的EC2实例时,相同的代码会抛出下面的错误-我现在被卡住了,我已经尝试了一切,以确保所有内容都是UTF-8编码的。Mysql DB绝对是utf-8编码的,我已经尝试强制对变量进行utf-8编码,正如您从代码中看到的那样-也许我没有正确理解错误消息 代码 来自EC2的错误消息 I, [2017-10-21T16:02:49.832304 #6039]

我有一些代码通过DNS在数据库中查找域,以获取SPF和DMARC记录-该代码在cloud9上完美运行,但当部署到使用Op works创建的AWS上的EC2实例时,相同的代码会抛出下面的错误-我现在被卡住了,我已经尝试了一切,以确保所有内容都是UTF-8编码的。Mysql DB绝对是utf-8编码的,我已经尝试强制对变量进行utf-8编码,正如您从代码中看到的那样-也许我没有正确理解错误消息

代码

来自EC2的错误消息

I, [2017-10-21T16:02:49.832304 #6039]  INFO -- : Started GET "/domains/scanonedomain" for 84.92.56.31 at 2017-10-21 16:02:49 +0000
I, [2017-10-21T16:02:49.834128 #6039]  INFO -- : Processing by DomainsController#scanonedomain as HTML
D, [2017-10-21T16:02:49.835289 #6039] DEBUG -- :   User Load (0.4ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1
D, [2017-10-21T16:02:49.837043 #6039] DEBUG -- :   Domain Load (0.7ms)  SELECT `domains`.* FROM `domains`
I, [2017-10-21T16:02:49.845188 #6039]  INFO -- :   Rendered domains/scanonedomain.html.erb within layouts/application (9.0ms)
I, [2017-10-21T16:02:49.845440 #6039]  INFO -- : Completed 500 Internal Server Error in 11ms (ActiveRecord: 1.1ms)
F, [2017-10-21T16:02:49.846542 #6039] FATAL -- : 
ActionView::Template::Error (incompatible character encodings: UTF-8 and ASCII-8BIT):
     5:         <% @domains.each do |domain| %>
     6:          <% host = domain.domain %>
     7:          <% host.force_encoding('UTF-8') %>
     8:          <% records = dns.getresources(host, Resolv::DNS::Resource::IN::TXT) %>
     9:          <% records.each do |record| %>
    10:             <% txt = record.strings.join %>
    11:             <% txt.force_encoding('UTF-8') %>
  app/views/domains/scanonedomain.html.erb:8:in `block (2 levels) in _app_views_domains_scanonedomain_html_erb___1736845507882839174_20151860'
  app/views/domains/scanonedomain.html.erb:5:in `block in _app_views_domains_scanonedomain_html_erb___1736845507882839174_20151860'
  app/views/domains/scanonedomain.html.erb:4:in `_app_views_domains_scanonedomain_html_erb___1736845507882839174_20151860'
I, [2017-10-21T16:02:49.832304 #6039]  INFO -- : Started GET "/domains/scanonedomain" for 84.92.56.31 at 2017-10-21 16:02:49 +0000
I, [2017-10-21T16:02:49.834128 #6039]  INFO -- : Processing by DomainsController#scanonedomain as HTML
D, [2017-10-21T16:02:49.835289 #6039] DEBUG -- :   User Load (0.4ms)  SELECT  `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1
D, [2017-10-21T16:02:49.837043 #6039] DEBUG -- :   Domain Load (0.7ms)  SELECT `domains`.* FROM `domains`
I, [2017-10-21T16:02:49.845188 #6039]  INFO -- :   Rendered domains/scanonedomain.html.erb within layouts/application (9.0ms)
I, [2017-10-21T16:02:49.845440 #6039]  INFO -- : Completed 500 Internal Server Error in 11ms (ActiveRecord: 1.1ms)
F, [2017-10-21T16:02:49.846542 #6039] FATAL -- : 
ActionView::Template::Error (incompatible character encodings: UTF-8 and ASCII-8BIT):
     5:         <% @domains.each do |domain| %>
     6:          <% host = domain.domain %>
     7:          <% host.force_encoding('UTF-8') %>
     8:          <% records = dns.getresources(host, Resolv::DNS::Resource::IN::TXT) %>
     9:          <% records.each do |record| %>
    10:             <% txt = record.strings.join %>
    11:             <% txt.force_encoding('UTF-8') %>
  app/views/domains/scanonedomain.html.erb:8:in `block (2 levels) in _app_views_domains_scanonedomain_html_erb___1736845507882839174_20151860'
  app/views/domains/scanonedomain.html.erb:5:in `block in _app_views_domains_scanonedomain_html_erb___1736845507882839174_20151860'
  app/views/domains/scanonedomain.html.erb:4:in `_app_views_domains_scanonedomain_html_erb___1736845507882839174_20151860'