2013-05-17 21 views
10

我很滿意mailtrap(http://mailtrap.io/),直到我發現它變慢。有時它不會發送電子郵件或需要很長時間。Mailcatcher不能在分段服務器上工作

因此想到了替代方案並搬到了郵筒(http://mailcatcher.me/)。 問題是,它在開發環境中工作正常,但無法使它在分段環境中工作。每當我去端口1080看郵件,路徑不會被發現。

順便說一句我正在使用mailcatcher爲我的rails應用程序。

謝謝;

[更新] 我的郵件收發器設置: config.action_mailer.smtp_settings = {:主機=>http://mydomain.com,:端口=> 1025}

順便說一句,當我開始mailcatcher守護進程。它註銷

==> smtp://127.0.0.1:1025 
==> http://127.0.0.1:1080 

不是我的實際主機,是不是它的問題?

+0

什麼意思是「不工作」?你是否收到一些錯誤消息?您是否使用某個工作隊列或直接從控制器發送後臺電子郵件? – taro

+0

其實並沒有找到路徑。 尋找mydomain.com:1080拋出找不到路徑。我的郵件設置: config.action_mailer.smtp_settings = {:host => http://mydomain.com,:port => 1025}。 順便說一下,當我啓動mailcatcher守護進程。它註銷 ==> smtp://127.0.0.1:1025 ==> http://127.0.0.1:1080 不是我的實際主機,是它的問題嗎? – kxhitiz

回答

19

默認情況下,mailcatcher僅針對回送接口(因此爲127.0.0.1地址)運行,因此只能從運行的機器訪問。

當運行mailcatcher控制綁定的IP地址時,您可以使用--ip,--smtp-ip,--http-ip選項。

1

好吧,我回到了郵筒,現在好了。我的應用程序出現了一些問題,並且因爲該郵件未被髮送。現在一切都好了。

無論如何,謝謝你試圖幫助我。

快樂編程;)

1

通常我會說弗雷德裏克的答案是正確的。

但是由於某些原因,我們這沒有奏效。 Mailcatcher拒絕在IP地址上收聽。要解決這個問題,我們只需通過Nginx代理所有流量。也可以用另一個代理完成。不管怎麼說,這裏是我們的配置:

server { 
    listen 3020; 


    location/{ 
    proxy_pass http://127.0.0.1:1080; 
    proxy_redirect  off; 
    proxy_set_header Host    $host; 
    proxy_set_header X-Real-IP  $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    } 

} 

然後,您可以訪問你的服務器是這樣的:myserver.com:3020

似乎有點一個黑客攻擊,但希望這有助於。

相關問題