답변:
_path도우미는 사이트 루트 상대 경로를 제공합니다. 대부분의 경우 이것을 사용해야합니다.
_url도우미는 프로토콜 및 서버 이름을 포함한 절대 경로를 제공합니다. 나는 주로 서버에서 앱에 대한 링크를 만들 때 이메일에서 이것을 사용한다는 것을 발견했습니다. 주로 외부 사용을위한 링크를 제공 할 때 사용해야합니다. (이메일 링크, RSS 및 YouTube 동영상의 "공유"섹션 아래에있는 URL 복사 및 붙여 넣기 등을 생각해보십시오.)
자신의 사이트에 링크를 넣으면 경로의 도메인 부분이 중복되고 페이지 크기가 추가되므로 *_path도우미 와 함께 URL의 경로 부분을 사용할 수 있습니다 . 반면에 URL이 이메일이나 RSS 피드와 같이 사이트 외부에서 사용되는 경우 전체 URL이 필요하므로 *_url도우미를 사용하십시오 .
다른 답변에서 설명했듯이 _url이메일 링크 등에서 사용해야합니다 . 그러나 _url여기에 설명 된대로 리디렉션 에서도 사용해야 함을 추가하고 싶습니다 .
https://www.ruby-forum.com/topic/101346#221052
그리고 여기:
http://viget.com/extend/rails-named-routes-path-vs-url
여기에서 HTTP 사양의 관련 섹션을 살펴볼 수도 있습니다.
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.30