1つのフォームをドメインを跨ぐ同一サーバー内複数サイトに設置

Shinさん (2011-03-07 16:07:44) yatsugatake-pension.com

いつも、良質なプログラムをご提供下さり有り難う御座います。

 現在、CORESERVERに独自ドメインサイト約70、非独自ドメインサイト約30の全てに、メールフォームCGIUTF-8版を設置したいと考えています。以前は、全サイトそれぞれにプログラムをアップロードしていたのですが、管理が大変なことと、容量削減の意図から、一つにまとめたいと考えています。どのサイトからの問い合わせかを区別したいことから、フォームページを一つ作って全サイトからそこへリンクさせることも却下となりました。

 取り敢えずの試みとして、それぞれのサイトのディレクトリにCGIを置いたディレクトリへのシンボリックリンクを設置して、そこからCGIを呼ばせようとしたのですが、そうすると、Javascriptも動いていて、CGIも動いているらしく、Thanksページへは画面遷移してくれるのですが、メールが正しく送信されません。問合せ者アドレスには、送信確認メールと、

Hi. This is the qmail-send program at sXXX.coreserver.jp.
I’m afraid I wasn’t able to deliver your message to the following addresses.
This is a permanent error; I’ve given up. Sorry it didn’t work out.

<XXX@XXX.XXX>:
Sorry. Although I’m listed as a best-preference MX or A for that host,
it isn’t in my control/locals file, so I don’t treat it as local. (#5.4.6)

という内容のメールが届き、フォーム受信者にはメールが届きません。

 対処方法が有ればご指導頂きたい(ただ、超の付く初心者です)、或いは有償対応頂けるか、以上の通りご相談させて頂きます。無償サポートは不可で、有償サポートでなら可とのことでしたら、社内で検討の上、改めて見積依頼させて頂きたく存じます。


以上、ご面倒をお掛け致しますが、宜しくお願い致します。

Re:1つのフォームをドメインを跨ぐ同一サーバー内複数

和田 (2011-03-14 06:04:32) www.synck.com

メールアドレスの発信者(差出人)に制限が掛かってるのかもしれませんねサーバ側で。参照時のドメインを環境変数から取得して、差出人を動的に変更するなどの措置が必要かもしれません。

例えばですが参照ドメインを利用した形で差出人を動的に変更する例としては
@mailto = ("no-reply\@$ENV{’SERVER_NAME’}");
こんな感じになります。

Re:Re:1つのフォームをドメインを跨ぐ同一サーバー内複数

伊藤さん (2011-03-30 18:29:57) yadoshirube.com

ご回答有り難う御座いました。

 ご指導頂いた方法で、無事運用を開始出来ました。使用予定の無いメールアドレス(各ドメイン分)を多数作る事にはなってしまいましたが、「このアドレスには返信しないで下さい」と書き添えた上で、かつ、それぞれのアドレスを念の為転送専用に設定して、本来受信したかったアドレスに転送することで目的を達成致しました。


本当にお世話になりました。