こんにちは。私は今度卒論で、オークションサイトを作ろうとしているものです。
無償のサンプルソースを見つけたのでそれをいじってますが、知識がほとんどないので困っています。中間発表を目の前にして、自分のPCにsendmail機能がないことに気がつき、大慌てです。
学生なのでお金がないのでPerlモジュールでなんとかならないかと、ppmでやってみたのですが、Mail:SenderもMail:SendmailもNet:SMTPも入ってないらしいのです。
質問が重複して申し訳ないのですが、誰か解決策を教えてください!
ちなみにApache2、perl5.8.7、windowsXPです。
よろしくお願いします。
No.9ベストアンサー
- 回答日時:
> cgiプログラムからメールを送信するためには、SMTPサーバという、メールを送信するためのサーバをたてる(?)必要があるのですね。
で、そのSMTPサーバには、sendmailやらxmailやらといった種類があるのですよね。そのとおりです。
大学のSMTPサーバーを使わせてもらえるなら自分で用意する必要はありませんが、「それも勉強だ」と言われてしまえばそれまでですね。
> Net:SMTPとは、そのサーバにメールを転送するために必要なモジュールっていう事なんですかね。
プログラミングが絡んで難しく考えてしまいがちですが、Net::SMTPなんて要はOutlook ExpressやBecky!などのメールソフトと同じSMTPクライアントです。
メールソフトでもアカウント設定などでSMTPサーバー名を入力する項目ありますよね。
$smtp = Net::SMTP->new('localhost');
でサーバー名をセットしていることになります。
> myPCにメールサーバをたてられるなら、xmailなどのフリーソフトでメールサーバをたてて、ソースをそのフリーソフトにメールを送信するように書き直して、って感じでいいのですか?
SMTPサーバーをたてた後にテストのため、Net::SMTPではなく一度メールソフトからちゃんとメールの送信ができるか確認することを勧めます。
http://www.atmarkit.co.jp/fnetwork/rensai/tcp03/ …
回答ありがとうございます。かなり御礼が遅れてしまいましたね(>_<)
せっかく教えていただいたのに、他の事でもつまづいているので、結局何も進みません。すみません。
でも、ありがとうございました。またぶつかったら質問するので、その時にまた回答していただけたらなと思います!
No.8
- 回答日時:
貼ったURLが古かったですね。
今のActivePerlは標準でNet::SMTPが入っているので、libnetのインストールは不要です。
前述のURLはNet::SMTPを使うためのサンプルソースの意味で貼りました。
Net::SMTPを使っても、別途SMTPサーバーを用意する必要はありますがそのあたりは大丈夫でしょうか?
絶対にできないことはないですが、無駄に面倒になります。
SMTPサーバーはWinXP ProならIISをインストールすることで一緒にインストールできますし、#2,6さんが書かれているようにXMailや大学のサーバーを借用するのも手です。
前回紹介したRadishは、最新版は多機能になっていますが、ver2.2.8は機能を絞った簡易なものですので卒論に使うにはちょっと、という感じがします。
XMailやRadish以外にもいくつか類似のソフトはあるので検証してみてはいかがでしょう。
http://wago.nobody.jp/mail/app/
この回答への補足
すみません、全く理解していなかったようです(^^;)
つまり、cgiプログラムからメールを送信するためには、SMTPサーバという、メールを送信するためのサーバをたてる(?)必要があるのですね。で、そのSMTPサーバには、sendmailやらxmailやらといった種類があるのですよね。Net:SMTPとは、そのサーバにメールを転送するために必要なモジュールっていう事なんですかね。
実は今オークションサイトを構築していて、ある企業が提供しているフリーのサンプルソースをいじっています。その中で、管理者がユーザーに送る場面があって、そのソースにsendmailでメールを送信している記述がありました。
myPCにメールサーバをたてられるなら、xmailなどのフリーソフトでメールサーバをたてて、ソースをそのフリーソフトにメールを送信するように書き直して、って感じでいいのですか?
今の時期にこんな質問してて本当に卒業も危ういんですけど、恥を忍んであえて伺いました。もし間違っているようでしたら、またご指摘をいだだけたらなと思います。よろしくお願いします。
No.7
- 回答日時:
ActivePerlをインストールしてみました。
バージョンは同じ5.8.7です。Net::SMTPが入っていないらしいということでしたが、ファイルを確認したところ、ちゃんとlib\Net\SMTP.pmがありました。
HTTPサーバーをたてるのが面倒だったので、直接ローカルで実行しただけですが、メールの送信もできました。
参考にしたソースは下記URLの1.2です。(3行目を$smtp = Net::SMTP->new('localhost');に変更)
http://homepage3.nifty.com/hippo2000/perltips/pe …
使用したサーバーソフトはRadish ver2.2.8ですが、メールの送信自体はSMTPの基づいて行われているようなので、SMTPにさえ対応していれば、どのようなサーバーでもいいはずです。
回答ありがとうございます。
本当ですか?!私の確認ミスだったようですね(>_<)すみません、お騒がせしている皆様・・・
参考にさせていただきます。。
No.6
- 回答日時:
#1 です。
やはり。メールサーバーをWindowsで動作させるのは大変な様な気がします。仮にサーバーが建ったとしても、Perlからコントールできるかどうか。。。と言う気がします。
方法論は2つある様な気がします。
1つは、卒業研究と言う事ですので、大学のメールサーバーを拝借する事はできませんか?
例えば、Socketモジュールを使って大学のメールサーバーに接続して、SMTPサーバーへ直接メールを投げてしまえば良い様な気がします。
もっと、お手軽にSMTPサーバーをコントールできるモジュールもあるはずです。
大学側に交渉する必要はありますが、お金も係らないし、現在の開発環境をそのまま利用する事が可能です。
もう1つは、現在ご利用のPCにLinuxを積むことです。#3さんが言われている様に、マルチブートにしてしまえば良いと思います。
開発自体を、Windows上で行うのではなく、Linux上で行ってしまった方が良いでしょう。ツール類やPerlのモジュール類もActivePerlなどより確実に動作しますし。
Linux環境であれば、ほぼ0円でなんでもできる(能力があれば。ですが。)と言うメリットがあります。
個人的には、Linux上で行った方が良い様な。。。と思いますし。卒業研究のテーマにそぐっていれば。ですけど。(一般には、Linux環境下で研究を進めた方が楽だし、yuihhiさんの勉強にもなると思いますし。)
SoketでSMTPサーバーに接続する事例を紹介したページを示しておきます。
http://www.site-cooler.com/kwl/perl/smtp.htm
参考URL:http://www.site-cooler.com/kwl/perl/smtp.htm
再び回答ありがとうございます。
そうですよね~勉強するという意味ではlinuxのほうがいいとは思うんですけど、何分時間が押しているもので。。。
でも参考にさせていただきます!
No.5
- 回答日時:
まずWinodwsが動作環境な時点であれな気がしますね。
まずパーミッションの設定が関係ない。
それとファイルロック機能が使えない。
これだけでも致命的に思いますね。
いっそうのことWindowsでつくるCGIと切り替えて
C++あたりでCGIを作りメール送信機能を自作または
元からあるDLLを利用したりして作るとか
回答ありがとうございます。
初心者なのでよくわかりませんが、出来る友達でもC++でつまづいていたので、私には到底無理かと(^^;)時間もないので・・・
でもありがとうございました。
No.4
- 回答日時:
まず、URL先の上部メニューのDocumentation部分をクリックすると、説明ページが開きます。
その中で、ダウンロードページを開く部分をクリック
ダウンロードするのは
XMailとXMailcfgの2つ。
いずれもWindowsバイナリファイルです。サイトは任意のところをクリックします(本家でも、チェコでも、ドイツでも・・・)。
すると、ダウンロードダイアログボックスが現れますので
任意のディレクトリを選んでOKをクリックします。
設定や、インストールはDocumentationを一通り見てくださいね。
再び回答ありがとうございます。
今ちょっと他にやらなきゃいけないことがあってstopしてるのですが、明日からまた再開するので、やってみますね♪
またアドバイスよろしくお願いします!
No.3
- 回答日時:
捕捉です。
No.1のかたも仰っていますが、
WindowsXPよりも、LinuxやFreeBSDなどのサーバーの方が、最初からPerlやメールサーバー機能が入っているので、お勧めです。(設定は必要ですが・・・)
Apacheは別途インストールしないといけませんが、無料で手に入ります。
もし、PCが無いのなら、Partition MAGICなどのマルチブート設定、起動ソフトを導入するという手があります。
回答ありがとうございます。
重複してしまいますが、やっぱりパソコンをあと1台というのは厳しいです(><)それで、あなたがおっしゃっているマルチブートや起動ソフトというものについて、少し教えていただけないでしょうか?
また、先程の回答にあったxmailのリンク拝見しましたが、xmailの意味やダウンロードの方法なども教えていただけないでしょうか?
本当に無知で初心者なので、「おいおい」と思われているかもしれませんが、どうぞよろしくお願いします!!
No.1
- 回答日時:
先ずは、メールサーバーを立てないとどうにも成りませんね。
一般には、qmailをインストールし、そのリッパーとしてSendmailを利用する。と言うのが一般的かな。と言う気がします。
ただし、両方Windowsでは動作しません。(多分。)
もし、空いているPCがあればLinuxをインストールすれば、qmailもsendmailも無料で利用できます。(両方、インストールはかなり難しいですが、ネット上にノウハウはたくさん落ちています。)
Windowsで動作するメールサーバーもありますが、qmail互換かどうかは微妙ですね。特に、Mail::sendmailなどのモジュール越しに利用する事はできないと思います。
(そもそも、qmailとsendmailが動いていれば、sendmailをopenし、リダイレクトすればメールは送れますから、Mail::sendmailなどを利用する必要も無いのかも知れません。ただし、sendmailはとても重いので、大量にメールを送る場合には適していません。その場合SMTPサーバー(qmail)を直接ドライブした方が良いです。)
とりあえず、Windows上でメールサーバーを立てるのか、Linuxマシンを確保するのか選択してみて下さい。
その上で次のステップへ進めば良いでしょう。
回答ありがとうございます。
質問のところでも書いたのですが、お金もないことですしあと1台linuxマシンを確保する事は困難だと思われます(^^;)
とりあえずwindows上でメールサーバを立てることを考えます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(クラウドサービス・オンラインストレージ) Onedriveで実現したい事。2台のPC間で。 2 2023/04/10 20:42
- Gmail 【お助け!】サーバーからのメール送信でGmailに送信されない問題について 1 2023/06/20 22:03
- Perl Windows10においての『Perl』のプログラムについて 1 2022/05/09 16:04
- YouTube 新しく買ったデスクトップPCを使用すると、今までのGoogleのアカウントが使えなくなった。 1 2023/01/07 00:41
- 養育費・教育費・教育ローン 大学の学費、本当に困っている低所得には貸さない制度であることについて。 2 2023/02/16 15:27
- 養育費・教育費・教育ローン 大学無償化制度(修学支援新制度)についてです。 明日問い合わせようと思うのですが不安なので教えて頂き 1 2022/04/28 20:28
- PHP phpのメールフォームの完了画面でメール受信のコードを書いています。 1 2023/05/31 11:39
- Perl perlをバージョンアップしたら、今まで正常に動いていたプログラムが、エラーになってしまった 3 2022/10/05 15:44
- Android(アンドロイド) Androidのバージョンについて 4 2022/12/26 11:13
- Gmail パソコンからLine へ加入手続きをとりたいのですが、・・・・・・・ 5 2022/07/24 14:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Pythonでタートルが使えません
-
ArduinoのジャイロモジュールMP...
-
Excel VBA 定義されたプロージ...
-
perlをバージョンアップしたら...
-
グラフのX,Y座標を取得したい
-
LCD ディスプレイを Raspberry ...
-
【vba】フォームに書いてあ...
-
VBでグローバル変数を宣言するには
-
Perlの数値計算で有効桁数を上...
-
VBAで別モジュールへの変数の受...
-
印刷後メッセージボックスを表...
-
Perlソースコードをコンパイル...
-
VBAを使用してWordからExcelの...
-
VBAで旧字体を異字体に一括で変...
-
Pg.pmモジュールがロードできない
-
モジュールとは何ですか
-
VBA This Workbookモジュール...
-
サブルーチンを使った再帰的な...
-
#!/usr/bin/perlで書きだしたCG...
-
Excel VBAでリンク切れをチェッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Perl モジュールのアンインスト...
-
ビルドとインストールの違いが...
-
XAMPPでImageMagickをインスト...
-
Net::Telnetモジュールをインス...
-
Cygwin インストール Perlを使...
-
ActivePerlが起動しない
-
PerlMagickで「JPEG」、「PNG」...
-
perlでppmを利用せずPKGを手動...
-
Spreadsheet::ParseExcelを使っ...
-
Perlモジュールのインストール...
-
Can't locate CPAN.pm in @INC...
-
Image::Magickの入手法
-
インストールしたモジュールの確認
-
CentOSにてTracのインストール
-
PerlにてCPANを使用し、モジュ...
-
makeしようとするとcolon expec...
-
sys/wait.hが見つかりません
-
自宅サーバでお金をかけずにm...
-
Pythonでタートルが使えません
-
XAMPPでApacheが起動しない
おすすめ情報