- 締切済み
.procmailrcのレシピの書き方、教えて下さい
電子メールによって掲示板へ記事の投稿ができるモジュールをWEBで見つけ、設置したいと思うのですが、.procmailrcのレシピの書き方がいまひとつわかりません。 procmail を使って、アドレスを転送する事は出来たので、.forwardは間違っていないと思うのですが・・、 解説には、 .procmailrc :0 Hw * ^[Tt]o: .*(投稿用メールアドレス) |$HOME/(設定パス)/ir-post.pl となっていましたので、 :0 Hw * ^[Tt]o: .*wa-gire@ |$HOME/www/cgi/ir-post.pl にしてみたのですが、動作しません;; logファイルには、 /home/1/./wa-gire/www/cgi/ir-post.pl: 20: Syntax error: "(" unexpected となってしまします。 FTPで接続しますと、自分のホームディレクトリーの上は、1 というディレクトリーがあって、他のユーザーの方の名前が並んでいます。 さらにその上がhomeになっているようです。 /home/1/の次の ./ が無くなれば良いような~??気がするのですが・・ 良いレシピの書き方を教えて下さいませんか。 良きアドバイスをお願いします。。_(_^_)_
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- パスがうまく通らない
Check.pmが o:\public_html/post_pervice/cgi/lib にあります。 このモジュールを利用するために以下のようなプログラムを書きました。 #! /usr/bin/perl -w use CGI::Carp qw(fatalsToBrowser); unshift @INC, "o:/public_html/post_service/cgi/lib"; print join "\n",@INC; use Check; この中の use Check; をコメントで伏せて動かすと、 o:/public_html/post_service/cgi/lib O:/usr/site/lib O:/usr/lib のような表示がなされるので、 unshift @INC, "o:/public_html/post_service/cgi/lib"; はちゃんと機能しているようです。 しかし use Check; のコメントを外して動かすと、 Can't locate Check.pm in @INC (@INC contains: O:/usr/site/lib O:/usr/lib .) at O:\public_html\post_service\cgi\showINC.pl line 8. BEGIN failed--compilation aborted at O:\public_html\post_service\cgi\showINC.pl line 8. のようなエラーが出てしまいます。 何がいけないのでしょう。
- ベストアンサー
- Perl
- procmailの使い方
http://www.abe-tatsuya.com/web_prog/perl_cgi/mail2perl.php 届いたメールアドレスに対して、hoge.plスクリプトを実行したいと 思います。 サーバー管理会社より、aliasesは編集できないということでしたが、 procmailは編集できるそうです。 しかし、上記サイトを見てもイマイチprocmailの使い方が わかりません。 届いたメールに対し、hoge.plを実行させるコードの書き方、 編集方法を教えてください。 もしくは、“一定文字数以上を受信拒否する設定方法”、 “オリジナルの自動返信メール送信”設定方法がprocmailで できましたら教えてください。 知識はなくはないのですが、本業プログラマではないため わかりやすくご説明頂けると助かります。
- ベストアンサー
- Perl
- procmailrcでHwオプションやBオプションの意味は?
RedHat9でprocmail-3.22-9を使用しています。 .procmailrcで VERBOSE=yes PATH=/usr/bin:/usr/sbin:/usr/ucb:/usr/local/bin:/pub/bin:$PATH. SHELL=/bin/sh MAILDIR=/home/user01/Maildir DEFAULT=$MAILDIR/new/ LOGFILE=$MAILDIR/.procmail.log :0 * ^mail-followup-to:.*q-beginners .q-beginners/ :0 * ^reply-to:.*FreeBSD-beginners-jp .FreeBSD-beginners-jp/ :0 * ^Subject:" hidesoft..*" [hidesoft]/. :0 B * ^Subject:" [Kuser:.*" [Kuser]/. :0 Hw /home/user01/Maildir/new exit という記述を見かけたのですがこのHwオプションの意味が分かりません。manを見て みたのですが H…ヘッダをegrepして w…フィルタやプログラムが終って、exitcodeを検出するまで待つ(通常無視され る)。 もし、そのフィルタが不成功ならばそのテキストはフィルタされてしまわない。 つまり、届いたメールファイルのヘッダを検出して(Hオプション)、マッチするかの 判定をして exitコードが現れるまで待つ? という事ですかね。うーん、イマイチよく分かりません。 このHwオプションがあるのとないとではどんな違いが起こるのでしょうか? あちこちで検索してみまてもイマイチ「Hw」の意義がわかりません。 「0: B」 の「B」もどういう意味になるのでしょうか? (manを見ては見たのですが)
- ベストアンサー
- その他(メールサービス・ソフト)
- パールスクリプトを呼び出すときのパスの指定について
わたしはあるインターネットのスクールに通っていたのですが パスについて頭が混乱しています。 CGIのコースのアクセスカウンターの授業で ディレクトリ構造が /usr/home/www/s1000000/cgi-bin/counter.pl となっているパールスクリプトをhtmlファイルのimgタグで呼び出すとき <img src="/usr/home/www/s1000000/cgi-bin/counter.pl?NAME=username&KETA=4">(その1) と記述したらうまく動作せず、 <img src="/~s1000000/cgi-bin/counter.pl?NAME=username&KETA=4">(その2) と訂正され、解決しました。 サーバのローカルルールでホームディレクトリのファイルは/~で呼びだせるように なっているようなのですが、それならば(その1)と(その2)は 同じことだと思うのです。 パスの相対指定はわかるのですが、絶対指定やurl指定がわかりません。 (その1)は絶対指定で(その2)はurl指定ということなのですか? (その1)と(その2)の違いは何ですか? なぜ(その1)では動作しないのですか? パスの根本的なところを知りたいです。 どなたか教えていただければ幸いです。
- ベストアンサー
- CGI
- Fedora Core1サーバーでCGIが利用できません
Fedora Core1でwebサーバーを立てたのですが、実行しようとすると「500 Internal Server Error」となってCGIが動きません。 perlへのパスやパーミッションの設定も見直しましたが、どこの設定が間違っているか分からないので、設定方法を教えてもらえないでしょうか? 現在の環境は ホスト名:saba.dyndns.org perlのパス:/usr/local/bin/perl CGIを仕えるようにしたいユーザー:guest CGIを設置するディレクトリ:/home/guest/cgi-bin/ Apacheのバージョンは2.0.49 となっています。 また以下はhttpd.confの抜粋です。 Listen *:80 #ScriptAlias /cgi-bin/ "/var/www/html/" ScriptAlias /cgi-bin/ "/home/guest/public_html/cgi-bin/" AddHandler cgi-script .cgi .pl <Directory "/home/guest/public_html/"> Options ExecCGI AllowOverride None Allow from all Order allow,deny </Directory> <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Options Includes ExecCGI FollowSymLinks <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> </Directory> 長文失礼しました。
- ベストアンサー
- Linux系OS
- HTMLからのpl実行
htmlのタグに下記のように記述し(test.html) <FORM METHOD="POST" ACTION="http://192.168.100.100:8080/cgi-bin/test.pl"> cgi-binにあるtest.plを実行したいのですが、 test.plのコードの中身がブラウザに表示されてしまいます。 httpd.confの設定は下記のように設定してあり、 権限もtest.pl,test.htmlともに755で設定しています。 ** ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/" <Directory "/usr/local/apache/cgi-bin/"> AllowOverride None Options None Order allow,deny Allow from all </Directory> AddHandler cgi-script .cgi .pl .rb
- ベストアンサー
- CGI
- cgi-libを使って変数値渡しをしたいのですが
cgi間の変数渡しの質問をしたのですが、うまくいかなかったので、調べてみると、 cgi-lib.pl'を使うことで簡単に値を渡せるということが分かりました。 ですが、 use lib '/home/www'; require 'cgi-lib.pl';# cgi-lib.plを呼び出す $test=1000; # 変数値渡し? form_input_post.cgi?name=$test; &ReadParse(*in); として、$testの値をform_input_post.cgiに渡そうとしたのですが。 コンパイルエラーが出てしまいました。 Can't modify constant item in scalar assignment at form_input_post.cgi line 49, near "$test;" syntax error at form_input_post.cgi line 49, near "$test;" form_input_post.cgi had compilation errors. というエラーです。 初歩的なミスな気がしますが原因がわからないので教えて頂きたいです。 よろしくお願いします。
- 締切済み
- CGI
- apacheのCGI設定について教えてください。
CGIの勉強のために、古いパソコンに fedora core 4 をインストールしてapache でローカルのテスト用サーバーにしようとしています。 /var/www/html に設置した簡単な perl CGI は動くのですが、同じものをユーザーのホームディレクトリに設置すると、internal server error になってしまいます。 ***** 以下 httpd.confの抜粋です。***** #UserDir disable UserDir public_html <Directory /home/*/public_html> AllowOverride All Options Includes ExecCGI FollowSymLinks SetHandler cgi-script </Directory> AddHandler cgi-script .cgi .pl ************************************** サーバーのエラーログを見ると Premature end of script headers: test.cgi となっています。htmlをprintしているだけのスクリプトで、/var/www/html では動くので、apache の設定の問題かと思っています。 ちょっとカテゴリーが違うかもしれませんが、よろしくお願いします。
- ベストアンサー
- Perl
- CGIでショッピングカートの設置方法
こんにちは 今CGIを使ってショッピングカートの 設置をしているのですが なぜか表示されないのです。 最初このやりかたで表示されたので 間違っているのかわからなくなってしまって・・ ディレクトリの入れ方合ってると思うのですが・・ public_html (ホームディレクトリ) # | # +-- cart / cart.cgi # | cartini.cgi # | admin.cgi # | data1.cgi # | data2.cgi # | raw.txt # | jcode.pl # | # +-- lock / こう書いてありました。 パールの指定も合っていると思います。 (一度表示されたので) 最初はモードチェックも出来たのに できません。 どうなっているのか困っています。 どうぞよろしくお願いします。
- 締切済み
- その他(インターネット・Webサービス)
- CGIに関して
CGIに関してなのですが、CGI実行ディレクトリ名binーcgiにすると言う点で困っています。今、掲示板をHPにアップしようとしているのですが、掲示板設置のマニュアルでは以下の通りとなっています。とりあえず、以下の作成が全然全く分からなくって困っています。分かる方がおられましたら是非ご回答下さいますようお願いいたします。 ホームディレクトリ(ここではpublic_htmlディレクトリとします) の下に、cgi-binディレクトリ(フォルダ)を作成し、必要なファイルををFTP 転送します。全体のディレクトリ構成とファイル位置は以下のとおりです。 public_html / index.html (トップページ) | +-- cgi-bin / ????.cgi ????.log jcode.pl 背景画像など ※ちなみに、ディレクトリ実行はbin-cgiとあります。
- ベストアンサー
- その他(インターネット・Webサービス)
お礼
ほんとうにありがとうございます、 出来たんです~ 昨日もさんざん悩んでいて、でもよくみれば、jcode.plが壊れていたり、mimer.plをダウンロードするときにhtml形式でダウンロードしてたり、初歩的なミスが多かったんですね(へへ;;) 最後はjcode.plのパスをhome/1/wa-gire/www/cgi/jcode.plにしてやったらメールが送られていったので、ぉぉ~っとおもって、まぁこれでいっかぁ~しめしめ~と思っていました。ご報告が遅れてすみませんでした。 またなにかあると恐いので、jcode.plをEUCコードで保存してアップロードしてきました。 本当にありがとうございました。感謝しております。m(_ _)m