rails tutorial 11장당 빠질 것
                                            
                                                
                                                
                                                
                                                
                                                
                                                 2682 단어  Rails 튜토리얼루비Rails메일러
                    
보내는 메일이 인코딩되어 링크를 밟지 않습니다.
가입시 name에 일본어 넣기
 
rails의 로그를 보면
 
http://localhost:3000/account_activations/AOSiSUDhma-B1bwZe3Wd_g/edit?email=3Dhogehoge%40gmail.com=0D
쿼리의 email에 수수께끼의 "3D"가 붙어 있다.
다른 곳에서 수수께끼의 0D와 3D,
로그에서이 링크를 밟으려고하면
User.find_by(email: '[email protected]')
를 탐사해 버려 root로 날아간다.
 quoted-printable
 
Content-Transfer-Encoding: quoted-printable로 인해
= = 3D로 변환됩니다.
메일 본문에 일본어가 있으면 7bit 문자로 변환할 수 없기 때문에,
Content-Transfer-Encoding: quoted-printable이 등장한다.
Content-Transfer-Encoding: quoted-printabl
는 8bit 문자를 7bit 문자로 변환하여 인코딩합니다.
 What does 3D mean in this html email?
 quoted-printable
quoted-printabl이 디코딩되기 전에 url을 밟고 있기 때문에 올바른 링크로 날지 않습니다.
 해결책
프로덕션 환경에서는 제대로 디코딩 된 링크를 밟기 때문에 해결책이라고는 말하지 않지만 일단
 mail-iso-2022-jp 사용
group :development, :test do
       ・
       ・
       ・
  gem 'mail-iso-2022-jp'
end
bundle install하고
application_mailer.rbclass ApplicationMailer < ActionMailer::Base
  default from: '[email protected]',
  charset: 'ISO-2022-JP'
  layout 'mailer'
end
 마지막으로
프로덕션 환경에서는 제대로 디코드 해 주므로, charset 지정은 바꾸지 않고 ok입니다.
참고
 일본어 메일의 구조
매일 정진
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(rails tutorial 11장당 빠질 것), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/mk_0409/items/7fb9db32666834438262
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                 우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
http://localhost:3000/account_activations/AOSiSUDhma-B1bwZe3Wd_g/edit?email=3Dhogehoge%40gmail.com=0D
User.find_by(email: '[email protected]')
group :development, :test do
       ・
       ・
       ・
  gem 'mail-iso-2022-jp'
end
class ApplicationMailer < ActionMailer::Base
  default from: '[email protected]',
  charset: 'ISO-2022-JP'
  layout 'mailer'
end
Reference
이 문제에 관하여(rails tutorial 11장당 빠질 것), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mk_0409/items/7fb9db32666834438262텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)