2014-04-18 1 views
0

지금까지 스크립트/러너를 사용하여 반송 경로를 [email protected][email protected]으로 전달했습니다. 그러나 Rails 4.0에서는 더 이상 작동하지 않습니다. 나는 또한 그것을하는 방법을 설명하기 위해 온라인에서 좋은 자원을 찾을 수없는 것 같습니다. 나는 보통 '언제 어디서나'보석으로 향하게된다. 그러나 이것은 cron 작업을위한 것이지, '프로그램으로의 파이핑'을위한 것이 아니다.Rails 4.0에서 전자 메일 수신 - 해당 파일 없음 (주자)

그래서 이것은 내가 현재 뭘하는지 본질적으로하지만, 실패 :

|/home/user/rails/dev.www/script/rails runner 'EBlast.receive(STDIN.read)' -e development

가 어떻게이 일을 어떻게해야합니까? 나는 Rails 4.1이 아니라 4.0에있다. FWIW 나는 빈/선반이 없습니다. 위의 명령은 "no such file or directory"을 산출합니다.

답변

0

내가해야 할 일이 실제로있었습니다.

이메일 [email protected]은 '수정 불가'로 간주되었습니다. 처음에는 하위 도메인에 대한 MX 레코드가 없기 때문에 그것이라고 생각 했으므로 추가했습니다. 하지만 여전히 오류가 있습니다. symlinked 디렉토리를 사용하여 프로그램에 파이프하기 위해 /etc/valiases에있는 별칭 파일을 수동으로 업데이트했습니다. (왜냐하면 내가 Capistrano로 배포했기 때문에 모든 배포 후에 디렉토리가 바뀌었기 때문입니다.) symlink가 exim routing (/home/me/rails_deployments/dev.www/current/bin/rails fail)과 관련하여 어떤 이유로 작동하지 않는다. 어쩌면 나는 symlinks 문제에 대해 틀 렸지만 아래의 해결책을 사용했을 때 문제는 사라졌다.

그러나이 문제는 결국 다른 문제 (/ usr/bin/env : ruby ​​: 해당 파일이나 디렉토리가 없음)가 발생했을 때 해결되었습니다. 나는 루비/보석을 관리하기 위해 RVM을 사용하고 있으며 분명히 이메일 전달자는 루비가 무엇인지 알지 못했습니다. (의 cPanel에서 "프로그램하는 파이프는"사용자의 홈 디렉토리를 가정 할 때 (/ 가정/날 /))


.rvm/wrappers/[email protected]/ruby /home/me/rails_deployments/dev.www/current/bin/rails runner 'EBlast.receive(STDIN.read)' -e development

은 루비 2.1.0 내 전류 : 이것은 최종 솔루션에 이르게 루비 버전이고, @website는 EBlast.receive 코드 기반에서 사용되는 gemset입니다.

EDIT : 너무 빨리 말하십시오. 명령에 고유 한 문제 세트가 있습니다 ... (gemfile이 없습니다). 이것은 우스꽝 스럽다.

관련 문제