Gg[ubN}[N cC[g

Macの設定

Mercuryでローカル内へのメール送信テスト環境作成

参考サイト『ローカルでメールのテスト環境』

目的

XAMPPを使って、ローカルでメールを送受信できるようにする。
素早くローカル内で完結する開発環境を構築する。
とにかくローカルでメールテストがしたい。

環境

Windows 7
thunderbird Mail
XAMPP 1.7.3

手順

XAMPPをインストール

→他のサイト参考

php.iniを変更(「;」を外す)

SMTP = localhost
smtp_port = 25
sendmail_from = postmaster@localhost
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

Mercury/32

  • XAMPPのコントロールパネルからMercury/32を立ち上げる
  • サービスを設定
  1. 「Configration」→「Protocol Modules…」を選択
    MercuryS
    MercuryP
    MercuryE
    MercuryI
    にチェック。
  • SMTP設定
    ●MercuryS
    「Configration」→「MercuryS SMTP Server」を選択
    [Connection control]
    「Allow connections」を選択→
    fromとtoに「127.0.0.1」を入力
    Allow connections
    Connections from this address range may relay mail through this server にチェック
    [Relaying Control]
    Use strict local relaying restrictionsにチェック

●MercuryE
「Configration」→「MercuryE SMTP Client」を選択
[Address discovery and DNS access]
127.0.0.1を入力

・アカウントを設定(テスト用に2つ用意)
「Configuration」→「Manage local users…」を選択
test1
test2
を用意
"Username"と"Personal name"は同名でOK
POP用の"Mail password"を設定する

●メーラーを設定(Thunderbirdを例に)
・送信(SMTP)サーバ設定
[設定]
[サーバー名] : localhost
[ポート番号] : 25
[セキュリティと認証]
ユーザー名とパスワードを使用するのチェックを外す
・アカウント設定
Mercury/32で準備したものを設定
(「接続の保護」は“なし”、「認証方式」は“認証なし”でとりあえず…)

●テスト

  1. スクリプトでtest1@localhostに送信、メーラーのtest2@localhostからtest1@localhostに送信
  2. test1@localhostで受信確認。
    →やったー!目的達成。

うまくいかない場合は切り分け。

例えば
・Mercury/32の中から直接、アカウントに送信
→メーラーから受信できればMercury/32の送信(SMTP)設定周りの問題?
受信できなければメーラーの設定やらMercury/32のIMAP(POP)設定周りか他の問題?
\xampp\MercuryMail?\MAIL内のアカウントにメッセージが残ってるならメーラー設定の問題など。
または他のログから。

・スクリプトでmail()でエラーにならないのに届いてない。
→sendmailフォルダ内のsendmail.logを見る。
refused port 25 なんたらが出で送信に失敗してそうならMercury/32の送信(SMTP)周りの問題?
logが残ってないならプログラムミス?iniのログ設定を変えてしまったとか。

とかとか。
私のはまったのはMercury/32のSMTP設定でした。
POP/IMAP周りは触ってないし、メーラーでのアカウント作成はうまくできたので。

※注
・ありがちではまること。各種設定変更をしたら再起動を!
・迷惑メール設定していたら届かないかも。
・セキュリティはざるっぽい?わからない…頑張ってください。

■他気になること
文字化け問題?
それはまた別の話。

■作業後の告白
無理やりMercury/32を使おうとして時間をくってしまいました。
調べたところたいがいはMercury/32を諦め、sendmail.iniの設定を触り外部メールサーバを使って解決をはかっている人が多いようでした。
もしくは別のメールサーバをインストールして使うとか。
私は「完全にローカルでやってみたい」「つーかMercuryあるんだからさ!」…つまるところ意地になってました。
まぁなんとかでけてよかった。

検索様々です。多謝↓
http://www.asahi-net.or.jp/~pm5m-on/it/network_server/xampp_win/mercury/index.htm

バーチャルホストの設定

基本的には以下のサイトを参考に設定

  1. XAMPP for Mac OS Xでローカル環境構築 〜バーチャルホスト設定〜
  2. Mac でバーチャルホストを XAMPP や MAMP に頼らず設定する方法

手順としては~

XAMPPの2ファイル、『hosts』と『httpd-vhosts.conf』に追記する(Macの場合)

1)/XAMPP/xamppfiles/etc/extra/httpd-vhosts.conf の中に、

<VirtualHost *:80>  
   DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs/benesse"  
   ServerName benesse
</VirtualHost>

などとしてベースとなるフォルダ名までのマシン上のパスと、上位のサーバ名を指定する

2)/private/etc/hostsファイルにviかemacsかなんかのエディタで、

127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost
fe80::1%lo0     localhost0D

の前に、以下を記述

127.0.0.1       benesse

そんでブラウザから、''例)http://benesse/ja/csr/index.html''とするとアクセス可能

注意点として、MACの場合は"hosts"ファイルの場所が~

/private/etc/hosts

となっている。なので、

$ sudo vi /private/etc/hosts

ってな調子で書き換える。

その他、Apacheのconfファイルもファイル最下部も修正 -- 蛭田? 2011-08-24 (水) 13:32:55


トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-09-07 (日) 01:17:10 (1113d)