プログラム質問箱一括表示
[表示範囲:2〜101][スレッドモード]
[NEW]
フォロー記事投稿
記事のキャンセル
From: qp3
<qp3@mxb.meshnet.or.jp>
Subject: サルからのアクセス解析質問(転載)
Date: 1996/06/28 17:18:28
あのーサルです。
生意気にもアクセス解析の方法を知りたいのですが、Webでも本でも良いのですが、何かオススメの参考書はありますか?
やりたいのは、HPへお客さんが「どこから来たか」(ホスト、URL)です。
この掲示板でのご説明でも、もちろん結構です。でもお手数とらせてしまいそうで恐縮です。
よろちく。
[RE]
フォロー記事投稿
記事のキャンセル
From: まじん
<majin@mxp.meshnet.or.jp>
Subject: Re: サルからのアクセス解析質問(転載)
Date: 1996/06/28 20:30:40
Reference: mesh.program/00002
6月28日に、qp3さんは書きました。
>あのーサルです。
>生意気にもアクセス解析の方法を知りたいのですが、Webでも本でも良いのですが、何かオススメの参考書はありますか?
>やりたいのは、HPへお客さんが「どこから来たか」(ホスト、URL)です。
qp3さん、こんちわ。
アクセス解析ですが、SSIを使う奴なら[ネットサーフレスキュー]が分かりやすいと思う。
ただし、meshはSSIが使えないので、解析したいページをあらかじめCGIにしておくとか、
img srcタグにnph(No Parse Headers)のCGIをかませるとかすればいいような気がします。
と、一応返事をしてますが、私も素人なので、間違ってたらごめんなさい。
にあさんへ
npc.cgiでアクセスログ解析付きバージョンが開発されてるとか、
そんなことがあったら、とてもうれしいのですが・・・。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: npc.cgiのログ機能
Date: 1996/06/28 21:23:52
Reference: mesh.program/00003
回答どうもです。しばらくフォロー付けないでこらえていた甲斐がありました。(^^)
6月28日に、まじんさんは書きました。
>ただし、meshはSSIが使えないので、解析したいページをあらかじめCGIにしておくとか、
>
やはり、これがお勧めですね。(^^)
ちなみに、接続してきた人のホスト名は REMOTE_HOST、そのアドレスは REMOTE_ADDR と
言う環境変数に入っています。また、どこから来たのかは HTTP_REFERER と言う環境変数に
入っています。その他、有用な情報が環境変数に入っていますから、簡単な CGI を書いて、
どんな変数に何が入っているのか調べてみると、どんな CGI を書いたらいいのか分かると
思います。> qp3さん。
例えばこんなので良いでしょう。
#!/bin/sh
echo "Content-Type: text/plain"
echo
env
exit 0
>img srcタグにnph(No Parse Headers)のCGIをかませるとかすればいいような気がします。
>
これは、相手のホスト名とかアドレスを得るには十分なのですが、どこから来たのかが
分からないのです。<IMG> タグに渡される REFERER は、その画像が張ってあるペーヂなので、
その、張ってあるペーヂにどこから来たか分かりません。例えば、npc.cgi に渡されている
環境変数を表示すると...
となり、HTTP_REFERER はこのペーヂの URL になります。
# この機能を使って、npc.cgi を使えるサイトを制限しているわけです。
>npc.cgiでアクセスログ解析付きバージョンが開発されてるとか、
>そんなことがあったら、とてもうれしいのですが・・・。
>
と言うわけで、ログ機能を付けても、現在行なっている WWWStateサーヴィスで分かる以上の
事と言うと、ブラウザの情報ぐらいなのですが...
# その程度で良いのなら簡単に付けられますけど、次回ヴァージョンの実現リストに
# 入れて置きましょうか?
あ、そうそう、アクセスログの重要な方法を忘れていました。(^^)
何のことは無い、システムが取っているアクセスログから、自分のペーヂに関する部分だけを
抜き出す、と言う方法です。WWWStateサーヴィスはこれを行なっています。
[RE]
フォロー記事投稿
記事のキャンセル
From: qp3
<qp3@mxb.meshnet.or.jp>
Subject: Re: npc.cgiのログ機能
Date: 1996/06/29 00:30:07
Reference: mesh.program/00004
6月28日に、にあさんは書きました。
>
>ちなみに、接続してきた人のホスト名は REMOTE_HOST、そのアドレスは REMOTE_ADDR と
>言う環境変数に入っています。また、どこから来たのかは HTTP_REFERER と言う環境変数に
>入っています。その他、有用な情報が環境変数に入っていますから、簡単な CGI を書いて、
>どんな変数に何が入っているのか調べてみると、どんな CGI を書いたらいいのか分かると
>思います。> qp3さん。
ありがとう、にあさん。
1からの出発ですが、とても参考になります。お手数かけました。
[RE]
フォロー記事投稿
記事のキャンセル
From: まじん
<majin@mxp.meshnet.or.jp>
Subject: Re: npc.cgiのログ機能
Date: 1996/06/29 12:17:05
Reference: mesh.program/00004
6月28日に、にあさんは書きました。
>と言うわけで、ログ機能を付けても、現在行なっている WWWStateサーヴィスで分かる以上の
>事と言うと、ブラウザの情報ぐらいなのですが...
># その程度で良いのなら簡単に付けられますけど、次回ヴァージョンの実現リストに
># 入れて置きましょうか?
>
どうも、プログラム質問箱でnpc.cgiの話をだしてごめんなさい。
ログ機能ですが、相手のホスト名とブラウザが過去500件程度、
保存されてると嬉しいです。ブラウザは特に今後は気になるところです。
という訳で、前回の発言で、「アクセスログ解析」と書いてしまいましたが、
「アクセスログ保存」機能です。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: npc.cgiのログ機能
Date: 1996/06/29 21:36:04
Reference: mesh.program/00007
6月29日に、まじんさんは書きました。
>どうも、プログラム質問箱でnpc.cgiの話をだしてごめんなさい。
>
アハハ、まあ、話題を囲い込もうと言うのは無理があるのでしょう。
NetNewsの様に Followup-To: を付けられるようにするのが良いかも知れません。
# って、これは「うぇぶ会議室の部屋」ネタですね。(^^;;
まあ、常連の方々は全部の会議室をのぞいているでしょうから良いですけど、
「npc.cgiの部屋」しか見ない人もいるかも知れないので、あちらにもネタを
振っておきます。(^^)
[RE]
フォロー記事投稿
記事のキャンセル
From: qp3
<qp3@mxb.meshnet.or.jp>
Subject: Re:Re: サルからのアクセス解析質問
Date: 1996/06/29 00:25:31
Reference: mesh.program/00003
6月28日に、まじんさんは書きました。
>qp3さん、こんちわ。
>アクセス解析ですが、SSIを使う奴なら[ネットサーフレスキュー]が分かりやすいと思う。
>ただし、meshはSSIが使えないので、解析したいページをあらかじめCGIにしておくとか、
>img srcタグにnph(No Parse Headers)のCGIをかませるとかすればいいような気がします。
>と、一応返事をしてますが、私も素人なので、間違ってたらごめんなさい。
まじんさん、ありがとうございます。何とか頑張ってみますが......。
>
>にあさんへ
>npc.cgiでアクセスログ解析付きバージョンが開発されてるとか、
>そんなことがあったら、とてもうれしいのですが・・・。
こんなことがあったら、qp3もうれしいのですが....(^o^;
[NEW]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Windows95でCGIの試験をする方法
Date: 1996/07/02 14:15:48
Fnordって言うWin95で動くフリーのWebサーヴァをご存じですか?
この間Win95ノート買ったんで、Fnordを試してみたんですが、なかなか良くできていますよ。
これと、Win95でも動くperlとを組み合わせれば、自分のパソコンでもCGIの試験が気軽に出来そうです。
# そうです、って言うのは、まだチャンと動かしていないからなんですけど。(^^;
perlは、例えば CPAN に入っている ntperl あたりが使えるようです。
日本だったら、例えばKDD lab.とかに置いてありますね。
まだ、チョットした試験しかしていないので、実際のサーヴァとして運用できる様なもの
なのかどうかは分かりませんが、CGIの試験ぐらいだったら十分では無いでしょうか?
ネットワークに繋いでなくてもループバック(127.0.0.1)を使って試験が出来るので便利です。
Windows95を使っている方は一度お試しあれ。
[RE]
フォロー記事投稿
記事のキャンセル
From: 北澤@BADKID
<badkid@mxb.meshnet.or.jp>
Subject: Re: Windows95でCGIの試験をする方法
Date: 1996/07/06 13:18:04
Reference: mesh.program/00009
7月2日に、にあさんは書きました。
>Fnordって言うWin95で動くフリーのWebサーヴァをご存じですか?
面白そうなのでDLしてみました。・・・が、初手から設定の仕方がわからな〜い(^^;
こんなことをここで聞いても良い物かどうか?ですが・・・
インストールは直ぐに出来たのですがコントロールパネルの設定とダイアルアップしない
TCP/IPの設定?というのも良く解らないなぁ。
各種のパスの設定も・・・
お時間がありましたら作動するまでの簡単な説明でもお願いできますか?
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: bad npc.idxというえらーめっせーじについて
Date: 1996/07/03 22:55:22
始めまして、愛知インターネットのスタッフのなおきです。
さっそくnpc-cgiのプログラムをダウンロードして展開してやってみたのですが、
どうしてもうまく行きません。bad npc.idx fileというエラーが出ます。
何か根本的におかしいのでしょうか?教えてください。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: bad npc.idxというえらーめっせーじについて
Date: 1996/07/04 02:04:17
Reference: mesh.program/00010
ありゃりゃ?メールでも答えたのですが...
7月3日に、naokiさんは書きました。
>さっそくnpc-cgiのプログラムをダウンロードして展開してやってみたのですが痔
>どうしてもうまく行きません治bad npc.idx fileというエラーが出ます治
>
これは CRENサーヴァを使っている時に顕在化するバグです。(^^;;
このバグに付いては「npc.cgiの部屋」の「このエラーメッセージは?」で始まる
スレッドで議論されており、そこにパッチの当て方も書いてあります。
# バグが見つかったのにヴァージョンアップを怠っていると、何人も同じ穴に落ちて
# しまいますね。(^^;; これは早くヴァージョンアップしろとの啓示かな? (^^)
## 「プログラム質問箱」の解説文は質問は皆ここでするみたいで紛らわしいですね。
## 専用の会議室があるソフトは、そちらで質問するようになっている事を書いて
## おかないといけませんね。(^^;;
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: CGIを使ってメールを送る方法教えてください
Date: 1996/07/04 18:58:21
7月8日よりプロバイダーのサービスを開始することになったのですが、
お客さんの中にフォームを使ってその内容をメールに送って欲しいという
要望があったのですが、簡単にaction=maito:でやろうとすると文字化けしてしまうので
CGIを積極的に使ってやりたいなーと思っているのですがなんとかお力貸してください。
action=/cgi-bin/toroku.??という形でCシェルかBシェルで書いたプログラム
何か参考になるようなもの教えてください。
うちのサーバーはSunでCERNのを使っています。ナントかお力添えをよろしく。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: CGIを使ってメールを送る方法教えてください
Date: 1996/07/04 22:20:48
Reference: mesh.program/00012
7月4日に、naokiさんは書きました。
>7月8日よりプロバイダーのサービスを開始することになったのですが、
>お客さんの中にフォームを使ってその内容をメールに送って欲しいという
>要望があったのですが、簡単にaction=maito:でやろうとすると文字化けしてしまうので
>CGIを積極的に使ってやりたいなーと思っているのですがなんとかお力貸してください。
>
少々苦言を述べます。
個人でホームペエヂを立ち上げている方がこの様な質問をなさるのなら何の不思議も
ありませんが、いやしくもプロバイダのサーヴィスをしようと言う方が、CGIでメイルを
出す方法を聞いているのでは、チョット調査不足も甚だしいのでは?
漢字で書かれたフォームの内容をメイルすると言うのは、ある意味 CGI 利用の第一歩
でもあるので、どこにでも参考になるものはあるでしょうし、別に自分で書いても
大変なものでも無いでしょう。
もちろん、道具を選ぶ必要はあります。例えば文字列処理に perl を使い、漢字変換に
nkf を使い、メイルの送出に sendmail を使うことにすれば簡単でしょう。
ご健闘を祈ります。
と、これだけでは、あまりに不親切ですか。(^^;;
もしかすると、これを読んでいる方の中に興味を覚えた人もいるかも知れませんので、
簡単に道筋を書いておきましょうか。
CGI に渡された引数から本文を取り出すのは良いですね。漢字は URL encode されて
渡されてきますから、まず、元の文章に戻します。$_ に本文が入っているなら、
tr/+/ /;
s/%([a-f0-9]{2})/pack("C", hex($1))/ieg;
だけで終わりです。
出来た本文の漢字コードはなんだか分かりませんから、インターネットメイルで送る
ためには JIS コードにしてやる必要があります。nkf に与えると同時にsendmailで
送ってしまえば簡単です。
open(OUTPUT, "| $nkf | $sendmail -n -t") || (エラー処理をする)
print OUTPUT <<"EOL";
From: $from_addr
To: $to_addr
Errors-To: $admin_addr
Subject: $subjest
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
(他にも必要なヘッダを書く)
$text
EOL
close(OUTPUT);
もちろん変数にはそれなりの値を設定してから使うことは言うまでもありません。
メイルアドレスもあらかじめチェックして、おかしな値だったらエラーにする必要も
ありますし、いわゆる半角かなを使われた時のために、nkf のヴァージョンは
新しいものを使って、半角かなを全角かなに変換するモードを使う、等など、
実際のスクリプトとして使うときには、いろいろ注意するところがあります。
[RE]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Re: CGIを使ってメールを送る方法教えてください
Date: 1996/07/05 00:26:06
Reference: mesh.program/00013
7月4日に、にあさんは書きました。
>少々苦言を述べます。
>
>個人でホームペエヂを立ち上げている方がこの様な質問をなさるのなら何の不思議も
>ありませんが、いやしくもプロバイダのサーヴィスをしようと言う方が、CGIでメイルを
>出す方法を聞いているのでは、チョット調査不足も甚だしいのでは?
>
>漢字で書かれたフォームの内容をメイルすると言うのは、ある意味 CGI 利用の第一歩
>でもあるので、どこにでも参考になるものはあるでしょうし、別に自分で書いても
>大変なものでも無いでしょう。
>
>もちろん、道具を選ぶ必要はあります。例えば文字列処理に perl を使い、漢字変換に
>nkf を使い、メイルの送出に sendmail を使うことにすれば簡単でしょう。
>
>ご健闘を祈ります。
>
>
>と、これだけでは、あまりに不親切ですか。(^^;;
>もしかすると、これを読んでいる方の中に興味を覚えた人もいるかも知れませんので、
>簡単に道筋を書いておきましょうか。
>
僕ははっきり言ってシロートに近いです。
CGIという言葉を知ったのもつい2、3週間前で
まだひとつもCGIのプログラム作ったことがないのです。かなしい・・・
ホームページ担当にいきなりならされて四苦八苦して今の愛知インターネットの
ホームページを何とか作りました。その2ヶ月前まではホームページの作り方さえ
知らなかったのです。ごめんなさい。
それである程度ホームページが完成したところでそのような要求(フォームの形でメールをもらいたい)
が出てきたわけなんです。だからgccとかtarとかも2、3日前に教えてもらって
やっとnpc.cgiを解凍出来たというありさまなんです実は、とほほ。
でもこれからは自分でちょっとづつでも作りたいのでCシェルかBシェル(これもほんとはよく分かっていないが
うちのサーバーで動くと確認出来たので・・・あとぱーるはむづかしそうだし)で簡単なものを教えてくださいませませ。
それからうちのサーバー(SunOS4.1.4)にはnkfは入ってないみたいです。
そいう限られた環境の中でできるものはないでしょうか?
長くなって申し訳ありません。ごめんなさい。これからも嫌いにならずご指導ご鞭撻のほど。
わたくしはちなみに24歳の若造です。いろいろしかってやってください。何にも知らないので・・・
[RE]
フォロー記事投稿
記事のキャンセル
From: まじん
<majin@mxp.meshnet.or.jp>
Subject: Re: CGIを使ってメールを送る方法教えてください
Date: 1996/07/05 11:19:03
Reference: mesh.program/00014
7月5日に、naokiさんは書きました。
>でもこれからは自分でちょっとづつでも作りたいのでCシェルかBシェル(これもほんとはよく分かっていないが
>うちのサーバーで動くと確認出来たので・・・あとぱーるはむづかしそうだし)で簡単なものを教えてくださいませませ。
>それからうちのサーバー(SunOS4.1.4)にはnkfは入ってないみたいです。
>そいう限られた環境の中でできるものはないでしょうか?
>
>長くなって申し訳ありません。ごめんなさい。これからも嫌いにならずご指導ご鞭撻のほど。
>わたくしはちなみに24歳の若造です。いろいろしかってやってください。何にも知らないので・・・
naokiさん、はじめまして、まじんです。よろしく。
私は単なる一ユーザーですが、CGIもどうにか、カスタマイズぐらいはできるようになって、
リリースはしてないもののCGIで遊んでる日々ですが、
にあさんのおっしゃったことにダブリますが、やはり、指導・鞭撻を乞う前に調査等
自分で勉強されることをおすすめします。今はすっかりブームで、CGI関係の書籍も出ているし、
その関係の説明のページを作成されてる方も多いです。
プロバイダー関係の方ならせめて、その程度のことは、あらかじめ勉強しておいて下さい。
私がHTMLとCGI等について勉強した本は
CQ出版社の「OPEN DESIGN」の96年4月号で、「HTMLリファレンス」です。
この本はサーバー設定まで含めてHTTPプロトコルについてまで説明してますので、
CGI等を作成する上でもかなり勉強になりました。おすすめします。
あと他に、UNIX関係の本や、webサーバー運用設定関係の書籍(日本語でも2冊は出てる)
を読まれることを御すすめします。あと、もっと積極的にWWWを利用するなら、
にあさんがまとめてくれてるリンク集を利用するとか、もっとネットサーフィンをして、
尋ねる前にもっと積極的に情報を探してみて下さい。また、WWWだけがインターネットでは
ないのですから、情報の入手経路(newsやml)の確保をして下さい。
プロバイダー関係の人の努力不足を目の当たりにすると、
プロバイダーに金を払って接続してる人間に、教えをこうなら、それなりに勉強して
からにして欲しいと、切に思います。
ここで、私がオンラインで書いてるだけで、プロバイダーには金を払ってることになるのですよ。
もし、私が愛知インターネットの人間なら、もっとキツイことを書いたと思います。
私はにあさんのようには、やさしくないのですが、これでも、丁寧に書いたつもりです。
どうか、意を汲んで努力・勉強のほどをよろしくお願いします。
[RE]
フォロー記事投稿
記事のキャンセル
From: naoi
<naoki@aichinet.or.jp>
Subject: Re: CGIを使って...お叱りありがとうございます
Date: 1996/07/05 12:39:39
Reference: mesh.program/00015
7月5日に、まじんさんは書きました。
>naokiさん、はじめまして、まじんです。よろしく。
>私は単なる一ユーザーですが、CGIもどうにか、カスタマイズぐらいはできるようになって、
>リリースはしてないもののCGIで遊んでる日々ですが、
>にあさんのおっしゃったことにダブリますが、やはり、指導・鞭撻を乞う前に調査等
>自分で勉強されることをおすすめします。今はすっかりブームで、CGI関係の書籍も出ているし、
>その関係の説明のページを作成されてる方も多いです。
>プロバイダー関係の方ならせめて、その程度のことは、あらかじめ勉強しておいて下さい。
>私がHTMLとCGI等について勉強した本は
>CQ出版社の「OPEN DESIGN」の96年4月号で、「HTMLリファレンス」です。
>この本はサーバー設定まで含めてHTTPプロトコルについてまで説明してますので、
>CGI等を作成する上でもかなり勉強になりました。おすすめします。
>あと他に、UNIX関係の本や、webサーバー運用設定関係の書籍(日本語でも2冊は出てる)
>を読まれることを御すすめします。あと、もっと積極的にWWWを利用するなら、
>にあさんがまとめてくれてるリンク集を利用するとか、もっとネットサーフィンをして、
>尋ねる前にもっと積極的に情報を探してみて下さい。また、WWWだけがインターネットでは
>ないのですから、情報の入手経路(newsやml)の確保をして下さい。
>
>プロバイダー関係の人の努力不足を目の当たりにすると、
>プロバイダーに金を払って接続してる人間に、教えをこうなら、それなりに勉強して
>からにして欲しいと、切に思います。
>ここで、私がオンラインで書いてるだけで、プロバイダーには金を払ってることになるのですよ。
>もし、私が愛知インターネットの人間なら、もっとキツイことを書いたと思います。
>私はにあさんのようには、やさしくないのですが、これでも、丁寧に書いたつもりです。
>どうか、意を汲んで努力・勉強のほどをよろしくお願いします。
まじんさん、はじめまして
お叱りありがとうございます。謙虚に受け止めます。
ほんとに勉強不足です。
ほんの少し言わせてください。
2ヶ月前に突然、愛知インターネットのホームページを作れと言われて
ホームページの「ほ」の字も知らない僕がたくさん本を買って見よう見まねで
さわったことのないMacも使いながら今のページがようやくできたところなんです。
それでつぎはCGIといわれても何がなんだか・・・CGIのCの字もほんとに知らなかった
unixも当然知るはずもなく知っているのはWindows95でインターネットにつなぐ方法
ぐらいなもんなんです。プロバイダーの人間でありながら普通の人なんです。実際
立ち上げ等は僕は関与してないんです。それでいきなりサーバーの前に座ってCGIやれと
いわれても・・・。
それでもあっちこっちねっとさーふぃんしていろいろやり方等を見て、質問のメールも
たくさん出したんですけど反応がないんですよー。みんなメールって見てるんでしょうか?
本屋さんにもまめに行ってるんですけどどういう本がいいのかまず分からないし。
まじんさんが教えてくれた、[open design」というの探してみます。ありがとうございます。
ほんとに基本がないから自分でもどうしたらよいかわからないでいたんです。
まかされてしまっている以上何とかしなくちゃいけないというプレッシャーもあるし。
うちにはCGIやったことあるひとはいないし・・・。
かといってCGIばかりやってることもできない状態なんです。もともとほかの関係の仕事
していたので、そっちの仕事がまだ引きずっているんです。つまり会社の転換期なんですよね。
うちのプロバイダーは月額3000円の固定制をとっているし、会員はまだ数人だし
これではやっていけないので前の仕事もやらなきゃっていう状態なんです。つぶれてしまう・・・。
泣きたいくらいですほんと。ごめんなさい。ゆるして。
だからこれから真剣に勉強しようと思ってるんです。
こんなバカな僕をたくさん叱ってやってください。今からでも遅くないですよね。
毎日12時前に家に帰ったことナインです最近。でもがんばります。
ほんとにまじんさん「かつ」をどうもありがとうございました。
これからもよろしくお願いします。
とうとう全部ぶっちゃけてしまいました。
[RE]
フォロー記事投稿
記事のキャンセル
From: よだ
<t-yoda@mxa.meshnet.or.jp>
Subject: Re: CGIを使って...お叱りありがとうございます
Date: 1996/07/06 16:19:26
Reference: mesh.program/00017
よだです。
なかなか大変そうですね。
CGIについてですが、すでにまじんさんから本の紹介がありましたが、
WWW上でも結構さがすとみつかりますよ。
ODIN等のサーチエンジンで"CGI"でサーチかけると
「これでもか!」ってくらい見つかりますので、参考にしてはいかがでしょうか?
この中にはいろいろとスクリプトを公開しているところもありますので、
使えそうなやつを持ってきて、自分の所の環境にあわせてカスタマイズすれば
OKでしょう。
うちで使ってるスクリプトはだいたいこうやって作ってます。
ご参考までに...
[RE]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Re: odinってなに?
Date: 1996/07/06 19:52:28
Reference: mesh.program/00019
7月6日に、よださんは書きました。
>よだです。
>
>なかなか大変そうですね。
>
>CGIについてですが、すでにまじんさんから本の紹介がありましたが、
>WWW上でも結構さがすとみつかりますよ。
>
>ODIN等のサーチエンジンで"CGI"でサーチかけると
>「これでもか!」ってくらい見つかりますので、参考にしてはいかがでしょうか?
>この中にはいろいろとスクリプトを公開しているところもありますので、
>使えそうなやつを持ってきて、自分の所の環境にあわせてカスタマイズすれば
>OKでしょう。
>うちで使ってるスクリプトはだいたいこうやって作ってます。
>
>ご参考までに...
はじめましてよださん。
返事ありがとうございます
ODINって何ですか?
それがわかったら早速それにもアクセスかけてみます。
今HBJ出版局のシェルプログラミングというのを読んで勉強してます。
それではよろしく。
[RE]
フォロー記事投稿
記事のキャンセル
From: はやし@岡山大
<hayashi@qmhp.okayama-u.ac.jp>
Subject: Re: odinってなに?
Date: 1996/07/08 01:58:40
Reference: mesh.program/00020
7月6日に、naokiさんは書きました。
>ODINって何ですか?
>それがわかったら早速それにもアクセスかけてみます。
はじめまして、はやし@岡山大です。
勝手にフォローを書かせていただきます。(宣伝もかねて)
ODINというのは東大が提供している「サーチエンジン(検索システム)」です。
アメリカでは「Yahoo!」というのが有名です。
世の中にはいろいろなサーチエンジンがありますが、僕のページにコレクションしてあります。
一度いらして下さい。
URLは
http://qmhp.okayama-u.ac.jp/qpd/qmp/students/hayashi/SEARCH.html
です。
それでは、また。
追伸
来られた際には「訪問者登録」もしていってくださいね。(笑)
[RE]
フォロー記事投稿
記事のキャンセル
From: よだ
<t-toda@mxa.meshnet.or.jp>
Subject: Re: odinってなに?
Date: 1996/07/08 21:02:05
Reference: mesh.program/00023
よだです。
7月8日に、はやし@岡山大さんは書きました。
>はじめまして、はやし@岡山大です。
>勝手にフォローを書かせていただきます。(宣伝もかねて)
おそかったか (^^;;
>ODINというのは東大が提供している「サーチエンジン(検索システム)」です。
>アメリカでは「Yahoo!」というのが有名です。
>世の中にはいろいろなサーチエンジンがありますが、僕のページにコレクションしてあります。
>一度いらして下さい。
>URLは
>http://qmhp.okayama-u.ac.jp/qpd/qmp/students/hayashi/SEARCH.html
>です。
>それでは、また。
これはすごいですね〜
今後愛用させていただきます。
>追伸
>来られた際には「訪問者登録」もしていってくださいね。(笑)
今は会社からなんで、自宅からつないだときに訪問者登録してきますんで...
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: odinってなに?
Date: 1996/07/08 21:06:29
Reference: mesh.program/00023
7月8日に、はやし@岡山大さんは書きました。
ようこそいらっしゃいました。MeshNet 外の方の投稿も増えてくれるとうれしいです。
# 特に *.ac.jp サイトからにあの部屋に来ている人はあまりいない様なので。(^^;
>世の中にはいろいろなサーチエンジンがありますが、僕のページにコレクションしてあります。
>一度いらして下さい。
>
にあのペエヂへのリンクも張って下さってた様で、どうもです。(^^)
>来られた際には「訪問者登録」もしていってくださいね。(笑)
>
あっ、(^^;;;
[NEW]
フォロー記事投稿
記事のキャンセル
From: 菅 博
<e4538@icsc.maizuru-ct.ac.jp>
Subject: npc make error
Date: 1996/07/07 02:18:59
始めまして、すが@舞鶴高専です。
npc をダウンロードさせてもらって、さっそくコンパイルしてみたのですが、
gcc -O -c getput.c
getput.c: In function `update_count':
getput.c:37: `F_TLOCK' undeclared (first use this function)
getput.c:37: (Each undeclared identifier is reported only once
getput.c:37: for each function it appears in.)
getput.c:58: `F_ULOCK' undeclared (first use this function)
*** Error code 1
というエラーが出てしまいました。
コンパイルした環境は FreeBSD 2.1.0 です。(BSD系UNIXです)
どうすればいいのでしょうか、教えてください。お願いします。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: npc make error
Date: 1996/07/07 02:27:50
Reference: mesh.program/00021
7月7日に、菅 博さんは書きました。
>npc をダウンロードさせてもらって、さっそくコンパイルしてみたのですが、
>
と言うことで、npcネタなので「npc.cgiの部屋」へ移動しますね。(^^)
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: eval cgiparse -form ・・・やったんだけど
Date: 1996/07/08 23:14:01
またずうずうしくも質問させてもらいます。
ちょっとずつ調べていたんですが
Cしぇるで
query_stringの日本語を展開するプログラムのcgiparseなんですが(違ってるか?)
eval 'cgiparse -form -prefix set\'
とやれば結果は
set name = "naninani"
set mail = "nani@nani.ni.jp"
set nihongo = "にほんご"
というような内容と同じ状態になってくれると思ったのですがうまくいきません。
もしこの状態になればこれを
set temp=temp.file
の$tempに内容を書き込んで
mail naoki@aichinet.or.jp < $temp
とやればFORMからCGI経由でメールが送れるというのが
完成するのではないかと思っているのですが甘いでしょうか?
ちょっとづつ勉強中のnaokiでした。まだまだか・・・。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: eval cgiparse -form ・・・やったんだけど
Date: 1996/07/09 01:22:06
Reference: mesh.program/00026
7月8日に、naokiさんは書きました。
>query_stringの日本語を展開するプログラムのcgiparseなんですが(違ってるか?)
>
にあは cgiparse と言うのは知りませんが、見たところ環境変数 QUERY_STRING に
入っている文字列を NAME と VALUE のペアに切り分けてくれる物の様ですね?
これは CERN サーヴァと一緒に入ってくる物では無かったかしら?(チョット不確か)
もしそうだとすると、日本語の漢字コードを変換してくれるとは思えないので、
別途 nkf 等をインストール必要がありそうですが、誰かが日本語対応した物を
使っているのでしょうか?
まず、それ以前に、シェルスクリプトでやろうとなさっているようですが、シェル
(sh でも csh でも) スクリプトは簡単なことをする時には簡単に出来ますが、
面倒な事をする時には色々なサポートツール (tr、grep、sed、awk 等) の使い方を
良く知っていないとかえって大変になってしまいます。
ですから Unix に精通した人で無い限り、シェルスクリプトで大きなプログラムを
書くことはお勧めしません。はじめは良いですが、ユーザからの要求が増すにつれ
どんどん大変になって行き、遠からず破綻してしまうでしょう。
初心者であればなおさら、覚えて行くときの手間は変わらないので、最初から perl を
使うことをお勧めします。perl はあまり綺麗な言語とは言えませんが、テキスト処理に
優れていることは事実です。perl の機能は非常に豊富ですが、別に最初からすべての
機能を覚える必要は無く、使うだけの機能を覚えて行けば良いのです。
幸い、perl は C 言語などと構文が似ていますから、今まで何らかのプログラミング
言語をやったことのある人なら容易に覚えていくことが出来ると思います。
もちろん Unix を使っていく以上、ある程度はシェルスクリプトを書けなければ
仕方がないので、naoki さんがなさった勉強は決して無駄ではありませんが、
何でもシェルスクリプトでやろうとするのは止めた方が無難でしょう。
最初でボタンを掛け違うと、どこまで行っても元に戻せないものです。早めに
見切りを付けることをお勧めします。
老婆心ながら一言。
[RE]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Re: eval cgiparse -form ・・・やったんだけど
Date: 1996/07/09 08:56:45
Reference: mesh.program/00027
7月9日に、にあさんは書きました。
>初心者であればなおさら、覚えて行くときの手間は変わらないので、最初から perl を
>使うことをお勧めします。perl はあまり綺麗な言語とは言えませんが、テキスト処理に
>優れていることは事実です。perl の機能は非常に豊富ですが、別に最初からすべての
>機能を覚える必要は無く、使うだけの機能を覚えて行けば良いのです。
>もちろん Unix を使っていく以上、ある程度はシェルスクリプトを書けなければ
>仕方がないので、naoki さんがなさった勉強は決して無駄ではありませんが、
>何でもシェルスクリプトでやろうとするのは止めた方が無難でしょう。
>
>最初でボタンを掛け違うと、どこまで行っても元に戻せないものです。早めに
>見切りを付けることをお勧めします。
Cしぇるの限界てのがあるのか・・・。でも、このおかげでだいぶ自分にとっては
勉強出来たように思う。QUERY_STRINGとかちょっと分かってきたししぇる変数や
環境変数とかも何となくそういうものかなっていうのが分かってきたようだし・・・
もうちょっとこっちのCしぇるでがんばってから早めにぱーるに切り替えた方がいい
というにあさまのご指摘どおり怖い気もするけどぱーるに手を出してみようかな・・・。
ほんといろいろこの世界の常識ってもんを僕に教えてくれてありがたい限りです。
でもでも、まだまだ、ひよっ子なのでわからなくなって調べがつかなくなってしまったら
またずうずうしく質問をさせてもらいますね。アッタカーイ目で見守ってやってください。
それではまた・・・。がんばってきまーす。
(こういうのってかたかなをヒラガナで書いたりヒラガナをかたかなで書いたりすると
楽しいですね。俺ってなんか変?・・・)
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: できたよー!!!!
Date: 1996/07/10 22:31:02
にあさん、とうとうできました。もうめっちゃうれしぃっす!!!
cshのプログラムでフォームからCGI経由でメール送るやつっ!!
ホンマにありがとうございました。これからもこの調子で
ちょっとずつ、ちょっとずつレベルを上げていきたいと思います。
にあさん、見守っといてください。
また分からなくなったらここに来ますね!
ありがとうございました。
今から細かいセッティングに入ります。
それでは・・・
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: できたよー!!!!
Date: 1996/07/10 23:12:25
Reference: mesh.program/00029
7月10日に、naokiさんは書きました。
>にあさん、とうとうできました。もうめっちゃうれしぃっす!!!
>cshのプログラムでフォームからCGI経由でメール送るやつっ!!
>
おぉ、それはおめでとうございます。(^^)
>ホンマにありがとうございました。
>
うーむ。にあは小言を言っただけで、何にもしていないですが。(^^;;
>今から細かいセッティングに入ります。
>
ひとつ気になっているのは、nkf がインストールされていないと言う話だったのですが、
漢字変換は上手く行っていますか? SJIS や EUC でなく、チャンと JIS コードで
メールが送られていますか?
# それだけ確認しておきます。(^^)
[RE]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Re: できたよー!!!!
Date: 1996/07/11 08:34:29
Reference: mesh.program/00030
7月10日に、にあさんは書きました。
>ひとつ気になっているのは、nkf がインストールされていないと言う話だったのですが、
>漢字変換は上手く行っていますか? SJIS や EUC でなく、チャンと JIS コードで
>メールが送られていますか?
># それだけ確認しておきます。(^^)
nkfはインストールしたんですがまだ使ってないです。
でもcgiparseだけでとりあえずちゃんと日本語が送れたんですよね。
今送られている漢字が何コードなのか分かる方法あります?
とりあえず自分でもやってみますけど・・・。
今日は少し大人になった気分です。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: 漢字コードの見分け方
Date: 1996/07/11 21:48:05
Reference: mesh.program/00031
7月11日に、naokiさんは書きました。
>nkfはインストールしたんですがまだ使ってないです。
>でもcgiparseだけでとりあえずちゃんと日本語が送れたんですよね。
>
SJIS や EUC で送っても運が良ければ読めますが、電子メールとして送って
良いのは JIS コードだけです。
>今送られている漢字が何コードなのか分かる方法あります?
>とりあえず自分でもやってみますけど…。
>
自分に送ってみてコードを調べてみればいいのでは? (^^;;
例えば「試験です」と言う文字列を LANG を C にして od で見てみると、
3種類のコードはそれぞれ、
$ LANG=C
$ echo '試験です' | nkf -j | od -c ← JISコード
0000000 033 $ B ; n 8 3 $ G $ 9 033 ( B \n
0000017
$ echo '試験です' | nkf -s | od -c ← SJISコード
0000000 216 216 214 261 202 305 202 267 \n
0000011
$ echo '試験です' | nkf -e | od -c ← EUCコード
0000000 273 356 270 263 244 307 244 271 \n
0000011
の様に見えます。
[RE]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Re: 漢字コードの見分け方
Date: 1996/07/12 09:30:02
Reference: mesh.program/00033
>例えば「試験です」と言う文字列を LANG を C にして od で見てみると、
>3種類のコードはそれぞれ、
>
>$ LANG=C
>$ echo '試験です' | nkf -j | od -c ← JISコード
>0000000 033 $ B ; n 8 3 $ G $ 9 033 ( B \n
>0000017
>$ echo '試験です' | nkf -s | od -c ← SJISコード
>0000000 216 216 214 261 202 305 202 267 \n
>0000011
>$ echo '試験です' | nkf -e | od -c ← EUCコード
>0000000 273 356 270 263 244 307 244 271 \n
>0000011
>
>の様に見えます。
なるほどなるほど・・・。分かります。けど、LANGをCというのが分からないですね。
どういう環境になるのでしょうか?jaとかde:とかfr:とかなら調べて分かったんですけど
Cとは?どういう環境になるのでしょうか。Cプログラムのことかな?
それからメールはnkfを使ってちゃんとJISで送れるようになりました。これで安全安全。
まだちょっと問題がありますが、がんばってみます。
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: ある漢字を送ろうとすると変なエラーが出るんですけど・・・
Date: 1996/07/16 17:47:34
久々にnaokiです。
Cしぇるで書いてるプログラムなんですけど、
実験的に今
http://www.aichinet.or.jp/aichinet/jikken/testcgi.html
に乗せてやってるんですけどある程度はうまく行くんですが、
「本」や「府」(今分かっているので)という文字が入ると
missing}という変なエラーメッセージが出るんですよ。
これって意味分かりますか?
分かる人教えてください。
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: ある漢字を・・・
Date: 1996/07/16 17:55:10
「ある漢字を送ろうとすると・・・」の付け足しですけど
もう一つ 「ー」 この伸ばす文字を混ぜるともっと変な動きをするんです。
突然文字化けしてわけが分からなくなるんです。
これは僕の手におえません。誰か教えて頂けないでしょうか?
これってcgiparseのせいなのかなー
[RE]
フォロー記事投稿
記事のキャンセル
From: まじん
<majin@mxp.meshnet.or.jp>
Subject: Re: ある漢字を・・・
Date: 1996/07/16 23:21:05
Reference: mesh.program/00036
7月16日に、naokiさんは書きました。
>「ある漢字を送ろうとすると・・・」の付け足しですけど
>
>もう一つ 「ー」 この伸ばす文字を混ぜるともっと変な動きをするんです。
>突然文字化けしてわけが分からなくなるんです。
>
>これは僕の手におえません。誰か教えて頂けないでしょうか?
>
>これってcgiparseのせいなのかなー
こんにちわ、まじんです。
その「ー」で落ちるのは、私のページの検索機能と同じです。
原因は、UNIXメタキャラにあたるコードをその「ー(SJIS)」の2byte目が
使用しているためらしいです。
で、メタキャラとは、何か?それは私も詳しくは知りませんが、
ようするに改行コードやタブ等の表に見えない文字のことだと思います。
回避方法は、その「ー」を含めてSJISからEUCにコンバートしてから
使えば良いと思います。
ちなみに、私は面倒なので、まだ、そのコンバート処理を組み込んでません。
では、また。
[RE]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Re: ある漢字を・・・
Date: 1996/07/16 23:29:43
Reference: mesh.program/00037
7月16日に、まじんさんは書きました。
>7月16日に、naokiさんは書きました。
>
>>「ある漢字を送ろうとすると・・・」の付け足しですけど
>>
>>もう一つ 「ー」 この伸ばす文字を混ぜるともっと変な動きをするんです。
>>突然文字化けしてわけが分からなくなるんです。
>>
>>これは僕の手におえません。誰か教えて頂けないでしょうか?
>>
>>これってcgiparseのせいなのかなー
>
>こんにちわ、まじんです。
>その「ー」で落ちるのは、私のページの検索機能と同じです。
>原因は、UNIXメタキャラにあたるコードをその「ー(SJIS)」の2byte目が
>使用しているためらしいです。
>で、メタキャラとは、何か?それは私も詳しくは知りませんが、
>ようするに改行コードやタブ等の表に見えない文字のことだと思います。
>
>回避方法は、その「ー」を含めてSJISからEUCにコンバートしてから
>使えば良いと思います。
>ちなみに、私は面倒なので、まだ、そのコンバート処理を組み込んでません。
>では、また。
一度EUCのコードに変えてからまたSJIS戻せばいいってことかな、
出来るかどうか分からないけど一回やってみます。
ありがとうございました。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: ある漢字を…
Date: 1996/07/17 02:54:58
Reference: mesh.program/00037
7月16日に、まじんさんは書きました。
>7月16日に、naokiさんは書きました。
>
>>もう一つ 「ー」 この伸ばす文字を混ぜるともっと変な動きをするんです。
>>突然文字化けしてわけが分からなくなるんです。
>
>こんにちわ、まじんです。
>その「ー」で落ちるのは、私のページの検索機能と同じです。
>原因は、UNIXメタキャラにあたるコードをその「ー(SJIS)」の2byte目が
>使用しているためらしいです。
>
「本」「府」「―」。これらがトラブルを起こしているのは、まじんさんの
おっしゃる様に、メタキャラクタ "\(0x5C)" のコードが漢字コードの中に
含まれているからですね。
つまり、JISコードでは「本(0x4B5C)」「府(0x495C)」、SJISコードでは
「―(0x815C)」です。
# 他にも色々あります。SJIS だと使用頻度の高い「表」「能」「ソ」「十」何かが
# トラブルのタネですね。
あと perl5 を使っていると "@(0x40)" を含む漢字も問題を起こす可能性があります。
>回避方法は、その「ー」を含めてSJISからEUCにコンバートしてから
>使えば良いと思います。
>
ええ、EUCコードは JISコードの最上位ビットが立ったものなので、メタキャラクタや
コントロールキャラクタなどで使われているコードを内包しないので扱いやすいと
言われています。実際、内部処理を EUC で行なっているスクリプトは多いです。
しかし、この「うぇぶ会議室」のスクリプトは内部処理を SJIS で行なっています。
それでも別に支障はないです(よね?)。つまり、適切にクォートを行なったり、
必要な所にエスケイプを行なったりすれば、SJIS でも十分使えると言うことです。
# スクリプトの中に "表\示" とか書いてあるところは、つまり "\" をエスケイプして
# あるわけです。
SJIS を採用しているのは、会議室管理者の大半を占めるであろうパソコンユーザが日常的に
使っている漢字コードである、と言うことと、いわゆる「半角かな」を使われてしまった
時にあまりひどいことが起こらないようにするためです。
# 「半角かな」は使えない様にしておく方がいいのですが、パソコン通信に慣れ親しんでいる
# 人たちにとっては、「半角かな」が使えないと言うのは、到底受け入れがたい制限と
# 感じることもある様なので。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: そう言えば...
Date: 1996/07/17 04:30:24
Reference: mesh.program/00039
7月17日に、にあは書きました。
>あと perl5 を使っていると "@(0x40)" を含む漢字も問題を起こす可能性があります。
>
今、気が付いたんですけど (^^; まじんさんが「うぇぶ会議室の部屋」で上げていた
SJISの「全角スペース」関連のトラブルって、これじゃ無いのかしら?
# 「 (0x8140)」(SJIS) ですからね。
[RE]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Re: ある漢字を…
Date: 1996/07/22 10:16:56
Reference: mesh.program/00039
7月17日に、にあさんは書きました。
>しかし、この「うぇぶ会議室」のスクリプトは内部処理を SJIS で行なっています。
>それでも別に支障はないです(よね?)。つまり、適切にクォートを行なったり、
>必要な所にエスケイプを行なったりすれば、SJIS でも十分使えると言うことです。
># スクリプトの中に "表\示" とか書いてあるところは、つまり "\" をエスケイプして
># あるわけです。
>
そういう処理って言うのはやっぱりぱーるでしかできないのかなぁ。
いろいろ試してやってみてるんですが、Cしぇるだとどうもうまく行かない。
試しているうちにだんだんcgiparse var1.1のバグのような気がしてきたんですよ。
うーん、これが解決したらぱーるをしたいんだけど、何とかCしぇるで解決出来るまでは、
中途半端な気がして、次に移れないんだなこれが・・・。メタキャラとは何かとか
いろいろ分かってきたから、ソロソロ移ってみたいんだけど・・・。
それじゃ、またきますね、にあさん・・・。
[NEW]
フォロー記事投稿
記事のキャンセル
From: 北澤@BADKID
<badkid@mxb.meshnet.or.jp>
Subject: 入力フォームでの1行の文字数制限
Date: 1996/07/17 08:24:10
ども、北澤@BADKIDです。 やっと私の会議室にも書き込みをしてくれる方がでて
来たのですが、ここでやっと問題が出てきました。例えば1行の文字数を80字で改行した
場合、登録された記事を見ると平均的なブラウザの画面の中には収まらず横移動のスクロー
ルバーで移動させないと全文を読めなくなります。
そこでフォーム内で強制改行させるとか、登録する際に50字で改行するとかという
方法は採れないでしょうか? それとも
>会議室に載せたい内容を以下へお書き下さい を
会議室に載せたい内容を以下へお書き下さい 入力フォームの枠内で改行してね(^^) と
書いた方が良いか? (^^;
何か解決方法はありますか?
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: 入力フォームでの1行の文字数制限
Date: 1996/07/17 22:01:00
Reference: mesh.program/00041
7月17日に、北澤@BADKIDさんは書きました。
> ども、北澤@BADKIDです。 やっと私の会議室にも書き込みをしてくれる方がでて
>来たのですが、ここでやっと問題が出てきました。
>
ええと、「うぇぶ会議室」ねたの様なので、あちらに振りますね。
[NEW]
フォロー記事投稿
記事のキャンセル
From: Tora
<g93j0680@cfi.waseda.a.cjp>
Subject: textareaの改行コード
Date: 1996/07/19 01:36:58
初めまして。
フォームの内容をメールで送ってくるスクリプトを、sh
で書いたのですが、ちょっと困ったことがありまして。
textareaに入力されたものの改行コードが、なんだかお
かしくなってしまうんです。
hogera
hoge hoge
ほげらら
みたいに入力されたものが、
hogera^M hoge hoge^M ^M ほげらら^M
のようになってしまうのですが、何故なのでしょう?
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: textareaの改行コード
Date: 1996/07/20 04:12:02
Reference: mesh.program/00043
7月19日に、Toraさんは書きました。
>hogera
>hoge hoge
>
>ほげらら
>
>みたいに入力されたものが、
>
>hogera^M hoge hoge^M ^M ほげらら^M
>
>のようになってしまうのですが、何故なのでしょう?
>
えーと、チョット意味が取れないのですが、"^M" の様な余計な物が入ってしまう、
と言うことですか?それとも改行が無くなってしまうと言うことでしょうか?両方?
まず、TEXTAREA での改行は CR+LF、つまり 0x0D+0x0A (^M+^J) として送られます。
ですから行末に "^M" が有るのは正しい動作です。
次に LF が空白に化けている所ですが、これはスクリプトを見ないと何とも言えませんが
例えば echo $hoge とかすると、$hoge に入っている文字列はパラメータとして解釈されてから
渡されるので、連続した複数の空白や改行は一文字の空白にマージされます。
解釈させたくないときは、"$hoge" とクウォートする必要が有ります。
# そう言う事を聞いているのではない?? (^^;
[RE]
フォロー記事投稿
記事のキャンセル
From: Tora
<tora@mxc.meshnet.or.jp>
Subject: Re: textareaの改行コード
Date: 1996/07/20 13:13:10
Reference: mesh.program/00044
7月20日に、にあさんは書きました。
>7月19日に、Toraさんは書きました。
>
>>hogera
>>hoge hoge
>>
>>ほげらら
>>
>>みたいに入力されたものが、
>>
>>hogera^M hoge hoge^M ^M ほげらら^M
>>
>>のようになってしまうのですが、何故なのでしょう?
>>
>えーと、チョット意味が取れないのですが、"^M" の様な余計な物が入ってしまう、
>と言うことですか?それとも改行が無くなってしまうと言うことでしょうか?両方?
僕の知識が乏しいんで、うまく表現できなかったのですが、
両方です(だと思う)。とにかく、入力されたように改行で
きませんでした。
今、出先でスクリプトが手元に無いのですが、DMしても宜しいでしょうか?
できればちゃんと見ていただきたくて(^^;
# なんとあつかましい(__;
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: textareaの改行コード
Date: 1996/07/21 14:31:34
Reference: mesh.program/00045
7月20日に、Toraさんは書きました。
> 今、出先でスクリプトが手元に無いのですが、DMしても宜しいでしょうか?
>できればちゃんと見ていただきたくて(^^;
>
そうですねぇ、公開して問題ない範囲でここに書き込んでいただいた方が良いでしょうね。
同じ様な問題を抱えている人がいれば、その人達の助けにもなるでしょうし、にあが忙しくて
見ている暇が無くても、どなたか判る人がフォローしてくれるでしょうし。
[RE]
フォロー記事投稿
記事のキャンセル
From: Tora
<g93j0680@cfi.waseda.a.cjp>
Subject: Re: textareaの改行コード
Date: 1996/07/21 22:42:08
Reference: mesh.program/00047
7月21日に、にあさんは書きました。
>そうですねぇ、公開して問題ない範囲でここに書き込んでいただいた方が良いでしょうね。
>同じ様な問題を抱えている人がいれば、その人達の助けにもなるでしょうし、にあが忙しくて
>見ている暇が無くても、どなたか判る人がフォローしてくれるでしょうし。
特に問題ないんで、ここに張り付けてしまいます。
データをポストするformは、http://www2b.meshnet.or.jp/~tora/opinion.htm
です。
-------------------------------------------------------------------------
#!/usr/bin/sh
PATH=/usr/mesh/bin:/usr/ucb:/usr/local/www/httpd:$PATH
export PATH
eval `cgiparse -init`
eval `cgiparse -form | nkf -s`
TMP=/tmp/mailcensus.
echo "About Tora's home page" >> $TMP
echo "_______________________________________" >> $TMP
echo " " >> $TMP
echo >> $TMP
echo "Name: $FORM_theName" >> $TMP
echo "From: $FORM_theEmail" >> $TMP
echo "URL of homepage: $FORM_thePage" >> $TMP
echo >> $TMP
echo "Opinion to my page: " >> $TMP
echo "$FORM_theOpinion" >> $TMP
nkf $TMP | mail -s "comment to my homepage" tora@mxc.meshnet.or.jp
rm $TMP
echo "Context-type: text/html"
echo ""
echo ""
echo "Thank you very much"
echo ""
echo "Thank You Very Much For Your Opinion !!
"
echo ""
------------------------------------------------------------------------
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: textareaの改行コード
Date: 1996/07/21 23:32:35
Reference: mesh.program/00048
7月21日に、Toraさんは書きました。
>特に問題ないんで、ここに張り付けてしまいます。
>データをポストするformは、http://www2b.meshnet.or.jp/~tora/opinion.htm
>です。
>
>-------------------------------------------------------------------------
>#!/usr/bin/sh
>
>PATH=/usr/mesh/bin:/usr/ucb:/usr/local/www/httpd:$PATH
>export PATH
>eval `cgiparse -init`
>eval `cgiparse -form | nkf -s`
>(後略)
>
これは、単純に eval "`cgiparse -form | nkf -s`" としてしまえば良い様に見えますが?
[RE]
フォロー記事投稿
記事のキャンセル
From: Tora
<g93j0680@cfi.waseda.a.cjp>
Subject: Re: textareaの改行コード
Date: 1996/07/22 20:46:58
Reference: mesh.program/00049
7月21日に、にあさんは書きました。
>>eval `cgiparse -init`
>>eval `cgiparse -form | nkf -s`
>>(後略)
>>
>これは、単純に eval "`cgiparse -form | nkf -s`" としてしまえば良い様に見えますが?
こうやったらメールの中身が空になってしまいました(^^;。
何故でしょう?
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: textareaの改行コード
Date: 1996/07/22 22:10:59
Reference: mesh.program/00051
7月22日に、Toraさんは書きました。
>>これは、単純に eval "`cgiparse -form | nkf -s`" としてしまえば良い様に見えますが?
>
> こうやったらメールの中身が空になってしまいました(^^;。
>
うーん、変ですね。試しに Tora さんのスクリプトを無変更で実行して見たのですが、
クウォートが無いと Tora さんが書いた様に改行が化けますが、クウォートすれば
漢字も改行も問題ないメイルが届きましたが。
# 空のメイルが 1本 Tora さんの所に行ってると思います。
# To: のメイルアドレスを変える前に、誤って cgi を GET してしまったです。(^^;;
[RE]
フォロー記事投稿
記事のキャンセル
From: Tora
<g93j0680@cfi.waseda.a.cjp>
Subject: Re: textareaの改行コード
Date: 1996/07/23 21:49:48
Reference: mesh.program/00052
7月22日に、にあさんは書きました。
>>>これは、単純に eval "`cgiparse -form | nkf -s`" としてしまえば良い様に見えますが?
>>
>> こうやったらメールの中身が空になってしまいました(^^;。
>>
>うーん、変ですね。試しに Tora さんのスクリプトを無変更で実行して見たのですが、
>クウォートが無いと Tora さんが書いた様に改行が化けますが、クウォートすれば
>漢字も改行も問題ないメイルが届きましたが。
解決しました(^^;
どっかにtipoがあったみたいです。どうもお騒がせしましたm(._.)m。
[NEW]
フォロー記事投稿
記事のキャンセル
From: かん(管理人)
<kan@a.b>
Subject: メッシュのプロセス
Date: 1996/07/20 16:10:02
んと、/scs/nph-chr.cgiが沢山スリープしてるみたいだけど、これって
重くする原因にはならないのかな?(^-^;(謎)
そゆ風にならないスクリプトを書くようにしたい(笑)
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: メッシュのプロセス
Date: 1996/07/23 05:26:07
Reference: mesh.program/00046
7月20日に、かん(管理人)さんは書きました。
>んと、/scs/nph-chr.cgiが沢山スリープしてるみたいだけど、これって
>重くする原因にはならないのかな?(^-^;(謎)
>
2号機不調の原因は、ユーザの CGIが無限ループに陥って重くしていたからだ、と言う
アナウンスがされていますけど、もしかして、これが原因となった CGI ですかね?
# しかし、kingdom のフリートークの CGI が原因で 1号機が絶不調に陥ってた時には、
# 何のアナウンスも無かったぞ。(笑)(笑)(笑)
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Cしぇるのメール送るのできましたよ
Date: 1996/07/23 16:00:25
Cしぇるでめーる送るプログラムやっとできたました。
どうもcgiparseのバージョンが古かったらしくて、
漢字コードをデコードするときにメタキャラが含まれるとメタキャラの方に
デコードしてしまうというバグがあったようです。(違うかもしれないけど・・・)
eval `$CGIPARSE -form -prefix set\ `
のところなんですけど・・・。(これでメタキャラがあっても新しいのはうまく行くらしい)
新しいバージョンではそういうことはないとのこと。
それで、ちょっと強引に
cat <<EOF | $NKF -s
`$CGIPARSE -value name`
`$CGIPARSE -value email`
:
:
EOF
ていうかんじでやってみたらうまくエラーもなく出来ました。
エラーの"Missing:}"の意味が分かるまで結構時間がかかりました。
そのおかげで、メタキャラのこともちょっと分かりました。
とりあえずCしぇるはこれくらいにしておこうと思います。
今は、ぱーるを特訓中です。
ぱーるで同じ内容のものを作ってみて、それからどんどん膨らましていこうって
思ってます。
にあさんはぱーるのプロやから僕が、いい質問が出来るようになったらまた戻ってきます。
その時はまたよろしくお願いしますね。それでは、また特訓してきます。
P.S. cgiparseの新しいバージョンを手に入れたはいいけど、うまくめーくできないんです。
とりあえず使わないからいいけど・・・。jcode.plての使うんですよね、ぱーるでは・・・。
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: あれれ・・・
Date: 1996/07/23 16:06:50
Cしぇるのメール送るのできましたよ
のないようが途中で消えちゃってる。
プログラム書いたのが悪かったのかなぁ。
書いた内容はどうなっちゃんだぁ?
僕が悪いのか・・・。
たぶん処理の途中で僕が書いたプログラムの説明が悪さをしてしまったんだろうなぁ
ごめんなさい。変なことになってなければいいんだけど。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: 直しておきました
Date: 1996/07/23 23:54:13
Reference: mesh.program/00055
7月23日に、naokiさんは書きました。
>Cしぇるのメール送るのできましたよ
>
>のないようが途中で消えちゃってる。
>プログラム書いたのが悪かったのかなぁ。
>
記事の中に生に "<" が書かれていたので、それ以降をタグの一部とされてしまった様ですね。
記事中に "<"、">"、"&" を書きたい時は "<"、">"、"&" とお書き下さい。
[RE]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: Re: 直しておきました
Date: 1996/07/24 08:54:56
Reference: mesh.program/00057
7月23日に、にあさんは書きました。
>7月23日に、naokiさんは書きました。
>
>>Cしぇるのメール送るのできましたよ
>>
>>のないようが途中で消えちゃってる。
>>プログラム書いたのが悪かったのかなぁ。
>>
>記事の中に生に "<" が書かれていたので、それ以降をタグの一部とされてしまった様ですね。
>記事中に "<"、">"、"&" を書きたい時は "<"、">"、"&" とお書き下さい。
そういうことか良く分かりました。考えてみればそうですよね。
よかったよかった。
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: ぱーるに挑戦します。
Date: 1996/07/24 09:35:10
54番の記事に書いたんですけど消えちゃったので書きます。
一応Cしぇるでメール送るプログラムが出来たので、
今はぱーるを特訓しています。
うちのぱーるはバージョンが5.000だと分かったので多分にあさん達のと
いっしょだと思うので、ちゃんと質問出来るようになったらまた来ます。
これからもよろしくお願いします。
うぇぶ会議室のぱっち版ダウンロードしてみました。
またやってみます。
それでは、naokiでした。
[NEW]
フォロー記事投稿
記事のキャンセル
From: naoki
<naoki@aichinet.or.jp>
Subject: ぱーるでメール送るのできました。
Date: 1996/07/29 09:17:12
ついにやっとぱーるでメール送るのできました。
ここです。
送る内容を確認できるようにしました。
他にいいやり方があったら教えてください。
naokiでした。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: ぱーるでメール送るのできました。
Date: 1996/07/29 13:25:42
Reference: mesh.program/00061
7月29日に、naokiさんは書きました。
>ついにやっとぱーるでメール送るのできました。
>
おめでとうございます。着々と勉強が進んで行ってますね。(^^)
>送る内容を確認できるようにしました。
>他にいいやり方があったら教えてください。
>
ここの会議室もはじめはプレヴューしか無かったんですけど、リクエストに応えてプレヴュー画面から
直接投稿するボタンと再編集するボタンを付けました。あると喜ばれるかも知れません。
# やり方はここのスクリプトを参照して戴けたらよろしいかと。
あと、ユーザからの入力を受けるのに GET (QUERY_STRINGを見る方法) を使っているようですが、
TEXTAREA からの入力ですと、QUERY_STRING に保持出来る最大バイト数 (サーヴァによって違う
はずですが、多くても数kBのはず) を越えてしまう可能性があるので、なるべく POST (標準入力を
読む方法) を使うことをお勧めします。
# これも、ここのスクリプトが参考になるでしょう。
[NEW]
フォロー記事投稿
記事のキャンセル
From: こじろう
<tmekata@ccgw.kyotec.co.jp>
Subject: パールのフレーム制御
Date: 1996/09/09 20:30:24
CGI(パール)初心者の私に誰か教えて下さい。
HTMLのフレーム機能を使って
フレーム内のFORMタグから引数をCGI(パール)に渡してるのですが、
このCGIが実行結果の内容を表示する(HTMLを返す)と
元のFORMのあったフレームの中に表示されてしまうのです・・・
フレームからCGIを使って、結果の画面はフレームを解除するには
どうしたらいいのでしょうか???
なにか基本的なことを間違ってるのかもしれませんが
なにぶん独学で最近始めたばかりなので、よろしくご指導下さい。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: パールのフレーム制御
Date: 1996/09/09 21:07:57
Reference: mesh.program/00063
おっ、この会議室には久しぶりの投稿だ!(^^)
9月9日に、こじろうさんは書きました。
>フレームからCGIを使って、結果の画面はフレームを解除するには
>どうしたらいいのでしょうか???
>
えーと、フレームの制御は出力を html から行なおうと、CGI から行なおうと同じです。
つまり、親の領域を使いたかったら TARGET="_parent"、全ての領域を使いたかったら
TARGET="_top" と言うように指定します。
具体的には、リンクなら、
<A HREF="foo.html" TARGET="_parent">
FORM で呼ぶ CGI なら、
<FORM ACTION="hoge.cgi" METHOD="POST" TARGET="_top">
と言う感じですね。(^^)
フレームの書式についての詳しい解説は、Netscape社のペーヂを参照して下さい。
[RE]
フォロー記事投稿
記事のキャンセル
From: こじろぉ
<tmekata@ccgw.kyotec.co.jp>
Subject: Re: パールのフレーム制御
Date: 1996/09/10 02:13:22
Reference: mesh.program/00064
9月9日に、にあさんは書きました。
>おっ、この会議室には久しぶりの投稿だ!(^^)
あ、そうなんですか?
にあさんに憧れて、これからHTMLだけじゃなくて
CGIにも(パールですけど)手を出そうとしてるので
壁にぶち当たったらよろしくお願いしますぅ(^^)
>>フレームからCGIを使って、結果の画面はフレームを解除するには
>>どうしたらいいのでしょうか???
>>
>えーと、フレームの制御は出力を html から行なおうと、CGI から行なおうと同じです。
>
>つまり、親の領域を使いたかったら TARGET="_parent"、全ての領域を使いたかったら
>TARGET="_top" と言うように指定します。
>
>具体的には、リンクなら、
>
><A HREF="foo.html" TARGET="_parent">
>
>FORM で呼ぶ CGI なら、
>
><FORM ACTION="hoge.cgi" METHOD="POST" TARGET="_top">
>
>と言う感じですね。(^^)
おぉぉ、そうだったのかぁ!!
FORMにもTARGETが使えるとは知らなかった!(^^;;;
コレで一気に解決(?)ですぅ・・・
ありがとうございましたぁm(__)m
[RE]
フォロー記事投稿
記事のキャンセル
From: こじろう
<tmekata@ccgw.kyotec.co.jp>
Subject: Re: パールのフレーム制御
Date: 1996/09/10 09:51:54
Reference: mesh.program/00065
9月10日に、自分で書きましたが(^^;
>>つまり、親の領域を使いたかったら TARGET="_parent"、全ての領域を使いたかったら
>>TARGET="_top" と言うように指定します。
TARGET="_blank"
TARGET="_self"
TARGET="_parent"
TARGET="_top"
これだけの種類があるみたいですね(^^;知らなかった・・・
で、_topってのはなんとなくわかったんですが
残りのはどういうときに使うんでしょ???
え?説明よんだんだろうって?・・・
・・・・・・・え、英語が読めない・・・(;。;)グスン
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: パールのフレーム制御
Date: 1996/09/10 12:48:34
Reference: mesh.program/00066
9月10日に、こじろうさんは書きました。
>TARGET="_blank"
>TARGET="_self"
>TARGET="_parent"
>TARGET="_top"
>
>これだけの種類があるみたいですね(^^;知らなかった・・・
>
>で、_topってのはなんとなくわかったんですが
>残りのはどういうときに使うんでしょ???
>
普通は TARGET="name" で適当な名前が付けられますけど、最初の文字が "_" で始まっている
名前は特殊な意味を持つ物があります。
・_blank --- これは常に新しい(名無しの)ウィンドゥを作って、そこにだす場合ですね。
・_self ---- これは自分と同じウィンドゥに出す場合ですね。普通TARGETを指定しなければ
自分と同じ所になるので、こんな指定は必要なさそうに見えますが、実は
省略時のウィンドゥは <BASE TARGET="..."> で変更出来るので、
その場合に有用です。
・_parent -- これは自分の親の領域を使います。つまりフレームが入れ子になっている時、
中の方で TARGET="_parent" を使うと、1階層だけフレームが解除される訳です。
・_top ----- これは全てのフレームを解除して全部の領域を使う時ですね。
_parent や _top は、親フレームがいなければ _self と同じですね。
これら以外で "_" で始まる名前を TARGET 名に使っても無視されます。
[RE]
フォロー記事投稿
記事のキャンセル
From: こじろぉ
<tmekata@ns1.kyotec.co.jp>
Subject: Re: パールのフレーム制御
Date: 1996/09/13 18:40:57
Reference: mesh.program/00067
9月10日に、にあさんは書きました。
>普通は TARGET="name" で適当な名前が付けられますけど、最初の文(中略)
>これら以外で "_" で始まる名前を TARGET 名に使っても無視されます。
おぉぉ、ありがとうございますぅm(__)m
わたしにゃ英語は読めないよぉ・・・(^^;
おかげで、こんなページを作ってみてるんです。
にあさんには全然面白くないだろうけど
まだ工事中ですけど、こんなページはすでにあるのかな???(^^;
ありがとうございました〜
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: パールのフレーム制御
Date: 1996/09/14 01:36:05
Reference: mesh.program/00071
9月13日に、こじろぉさんは書きました。
>おかげで、こんなページを作ってみてるんです。
>にあさんには全然面白くないだろうけど
>
>まだ工事中ですけど、こんなページはすでにあるのかな???(^^;
>
なかなか上手く動いているようですね。
HTML に関する解説を見せながら書かせるのはアイデアですね。
実はうちのサーヴァにも、ヘッダ形式とかバックグラウンドとかをメニューから
選んでいくと、ホームペーヂのサンプルが出来るやつがあります。出来たペーヂは
プレヴューして具合が良ければ、メールにして送る様になっています。本当は
ユーザ認証して直接ペーヂに書こうとしたんですが、その辺で作るの飽きちゃって。(^^;;;
# 色々良い HTML エディタが出てきた様なので、CGI でやっても勝てないなぁ、と
# 思ったことも止めた一因ではあるのですが。
ま、ほとんど選択項目無いんで元々あまり使い物にはならないんですけど。(^^;;
ここの「何でも掲示板」の最初の記事として書いた色見本は、その残骸なんです。(^^;;
[NEW]
フォロー記事投稿
記事のキャンセル
From: ken
<bansho@joyspace.com>
Subject: cgiを使ってファイル送信するには?
Date: 1996/09/12 16:47:10
お久しぶりの投稿です。
少し教えて頂きたいのですが、タイトルにもありますようにcgi(perl)の中でクライアントへ
ファイルを送信するにはどのように書けば良いのでしょうか?
具体的に申しますと、、、
アンケート用のページがあるとします。すべての項目を埋めてsubmitすると項目チェック後
NGであればエラーである旨を表示し終了。OKであればブラウザーのsave asのような
ダイアログが開いてダウンロードを要求してくると。。。
メーカーのダウンロードサイトなんかによくあるやつなのですが、submitから1画面もはさまずに
すぐダウンロードを開始したいのです。
このような感じなのですが、perlからダウンロードのためのファイル送信が分かりません。
コンテンツ・タイプのようにロケーションの指定かなと思っているのですが、
まったくうまく行きません。ご存知の方がいらっしゃれば教えて頂けないでしょうか。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: cgiを使ってファイル送信するには?
Date: 1996/09/12 20:32:22
Reference: mesh.program/00068
9月12日に、kenさんは書きました。
>少し教えて頂きたいのですが、タイトルにもありますようにcgi(perl)の中でクライアントへ
>ファイルを送信するにはどのように書けば良いのでしょうか?
>
例えばこんなやつですか?
ダウンロードしたいファイルを選んで下さい。
このスクリプトは単に Location: を使って、実際にダウンロードするファイルを
指定しているだけです。
ここで注意しなければならないのは、サーヴァ名を省略するとダウンロードファイル名が
CGI の名前(ここでは download.cgi)になってしまうことです。
つまり、Location: で指示した飛び先が明示的に同一サーヴァの場合、移動指示
(HTTP/1.0 302 Moved Temporarily) を出す代わりに、指示先の内容をそのまま
出力するからです。
[RE]
フォロー記事投稿
記事のキャンセル
From: ken
<bansho@joyspace.com>
Subject: Re: cgiを使ってファイル送信するには?
Date: 1996/09/13 10:42:01
Reference: mesh.program/00069
おおっ!
ありがとうございます。さすがにあさん!!
早速、テストしてみます。
というのもサーバがOS2なんです(笑)。
仕事の関係でHP作成&CGI作成しているのですが、いろいろと異なるところがあって
頭がまわりません。。。
UNIXにしてくれー!といつも言ってるんですけどね。
では、テストします!ありがとうございました。
[NEW]
フォロー記事投稿
記事のキャンセル
From: なおき@あいちねっと
<naoki@aichinet.or.jp>
Subject: perlちょっと教えてください。
Date: 1996/09/25 10:57:19
perlで
&xxx
$xxx
@xxx
は何とか分かってきたのですが
%xxx
ていいうのがちょっと・・・?なんです。
簡単にちょっと教えていただけないですか?
[RE]
フォロー記事投稿
記事のキャンセル
From: Yasu.F
<yasuf@ariake.or.jp>
Subject: Re: perlちょっと教えてください。
Date: 1996/09/25 22:05:57
Reference: mesh.program/00073
9月25日に、なおき@あいちねっとさんは書きました。
>perlで
>
>&xxx
>$xxx
>@xxx
>
>は何とか分かってきたのですが
>
>%xxx
>
>ていいうのがちょっと・・・?なんです。
>簡単にちょっと教えていただけないですか?
%なんとか というのは「連想配列」といって、簡単にいうと
@なんとか の配列の添字が文字列に変わったものです。
例えば
$hp{'nir'} = 'http://www2.meshnet.or.jp/~nir/';
$hp{'naoki'} = 'http://www.aichinet.or.jp/';
$hp{'yasuf'} = 'http://www2.ariake.or.jp/~yasuf/';
$naoki_hp = $hp{'naoki'};
のようなことができます(って、どういうことだろう^^;)
これでは、値を参照するためのキー(添字)が連続していないため、
すべての値について何かの処理をしたい場合などに不便です。そこで、
keys という演算子をつかって、
for (keys %hp) {
print "$_ さんのホームページは $hp{$_} です\n";
}
というようにすることがよくあります。ここで、keys 連想配列名 は
連想配列のすべてのキーをリストとして返します。先ほどの例なら
'nir' 'naoki' 'yasuf' という3つの文字列を含むリストが返されます。
ただし、ここでこの3つの順番はまちまちですので(詳しくはCamel Bookを参照してください)、
順番に並べたい場合は sort keys %hp などのようにする必要があります。
面白いのが、連想配列をリストとして扱った(?)場合の振舞いです。
上の例などは、
%hp = (
'nir', 'http://www2.meshnet.or.jp/~nir/',
'naoki', 'http://www.aichinet.or.jp/',
'yasuf', 'http//www2.ariake.or.jp/~yasuf/',
);
というように、キーと値をペアにしたリストを使って一度に代入することが
できます(うぇぶ会議室のsite.plでもやってますね^^)
また、reverse演算子を連想配列に対して使うと、キーと値の対応が逆になります。
つまり、$hp{'http://www2.ariake.or.jp/~yasuf/'} eq 'yasuf' となってしまう
わけです(同じ値のものがあれば、どちらかがなくなります)
というような感じでしょうか^^;;
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: perlちょっと教えてください。
Date: 1996/09/26 03:06:16
Reference: mesh.program/00074
フォローありがとうございます。
perlならYasu.Fさんにおまかせですね。(^^)
9月25日に、Yasu.Fさんは書きました。
>ただし、ここでこの3つの順番はまちまちですので(詳しくはCamel Bookを参照してください)、
>
ここで言う "Camel Book" とは
"Programming perl" by Larry Wall and Randal L. Schwartz
O'Reilly & Associates, Inc. ISBN 0-937175-64-1
の事です。 > naokiさん。
表紙にラクダの絵が書いてあるので「ラクダ本」と俗称されます。
訳書も出ています。「プログラミング言語perl」だったかな?
# このシリーズはみんな生き物の絵が書いてあるので、その名前で呼ぶことが多いです。
# "Sendmail"→「こうもり本」、"DNS and BIND" → 「バッタ本」等など。
Yasu.Fさんに P.S.
なんか、date=7&gif=img ってなってて壊れICONになっています。(^^;; (謎)
[RE]
フォロー記事投稿
記事のキャンセル
From: なおき@あいちねっと
<naoki@aichinet.or.jp>
Subject: Re: perlちょっと教えてください。
Date: 1996/09/26 12:12:48
Reference: mesh.program/00075
9月26日に、にあさんは書きました。
>フォローありがとうございます。
>perlならYasu.Fさんにおまかせですね。(^^)
>
>9月25日に、Yasu.Fさんは書きました。
>
>>ただし、ここでこの3つの順番はまちまちですので(詳しくはCamel Bookを参照してください)、
>>
>ここで言う "Camel Book" とは
>
>"Programming perl" by Larry Wall and Randal L. Schwartz
>O'Reilly & Associates, Inc. ISBN 0-937175-64-1
>
>の事です。 > naokiさん。
はい二つとも買って毎晩のように読んでますよ。
「らーにんぐぱーる」と「ぱーるぷろぐらみんぐ」
らーにんぐぱーるは特にすばらしい!!
>表紙にラクダの絵が書いてあるので「ラクダ本」と俗称されます。
>訳書も出ています。「プログラミング言語perl」だったかな?
>
># このシリーズはみんな生き物の絵が書いてあるので、その名前で呼ぶことが多いです。
># "Sendmail"→「こうもり本」、"DNS and BIND" → 「バッタ本」等など。
>
会社にありますその本。僕は読んでないけど・・・。
これからもよろしくお願いします。
[RE]
フォロー記事投稿
記事のキャンセル
From: Yasu.F
<yasuf@ariake.or.jp>
Subject: にあさんにそういわれるとは^^;
Date: 1996/09/26 20:23:04
Reference: mesh.program/00075
9月26日に、にあさんは書きました。
>フォローありがとうございます。
>perlならYasu.Fさんにおまかせですね。(^^)
うひぃ(笑) こーいうにわかプログラマに任せると、とんでもないことになりますよ^^;
# こーいうにわかadminに任せっきりになってるのがうちの会社(苦笑)
>
>9月25日に、Yasu.Fさんは書きました。
>
>>ただし、ここでこの3つの順番はまちまちですので(詳しくはCamel Bookを参照してください)、
>>
>ここで言う "Camel Book" とは
>
>"Programming perl" by Larry Wall and Randal L. Schwartz
>O'Reilly & Associates, Inc. ISBN 0-937175-64-1
>
>の事です。 > naokiさん。
>表紙にラクダの絵が書いてあるので「ラクダ本」と俗称されます。
>訳書も出ています。「プログラミング言語perl」だったかな?
これですね:
L.Wall,R.L.Schwartz,近藤 嘉雪 訳,「Perlプログラミング」,ソフトバンク,1993,ISBN4-89052-384-7
ちなみに、姉妹書としてこういうのもあります(Llama Book,ラマ本):
R.L.Schwartz,近藤 嘉雪 訳,「初めてのPerl」,ソフトバンク,1995,ISBN4-89052-678-1
この2冊さえ持っていれば、ふつうに使う分にはほとんど困ることはないでしょう。
時代的にPerl5の新機能は載っていませんが...
# まだPerl4相当でしか使ったことがない:-)
>Yasu.Fさんに P.S.
>
>なんか、date=7&gif=img ってなってて壊れICONになっています。(^^;; (謎)
うああ、書き直すの忘れてた^^;; 修正してたらnew本体にもバグ発見するし(爆)
(ほとんどの方には意味不明ですまんです)
[RE]
フォロー記事投稿
記事のキャンセル
From: なおき@あいちねっと
<naoki@aichinet.or.jp>
Subject: Re: perlちょっと教えてください。
Date: 1996/09/26 12:05:55
Reference: mesh.program/00074
9月25日に、Yasu.Fさんは書きました。
>9月25日に、なおき@あいちねっとさんは書きました。
>
>>perlで
>>
>>&xxx
>>$xxx
>>@xxx
>>
>>は何とか分かってきたのですが
>>
>>%xxx
>>
>>ていいうのがちょっと・・・?なんです。
>>簡単にちょっと教えていただけないですか?
>
>%なんとか というのは「連想配列」といって、簡単にいうと
>@なんとか の配列の添字が文字列に変わったものです。
>
>例えば
>
>$hp{'nir'} = 'http://www2.meshnet.or.jp/~nir/';
>$hp{'naoki'} = 'http://www.aichinet.or.jp/';
>$hp{'yasuf'} = 'http://www2.ariake.or.jp/~yasuf/';
>
>$naoki_hp = $hp{'naoki'};
>
>のようなことができます(って、どういうことだろう^^;)
>
>これでは、値を参照するためのキー(添字)が連続していないため、
>すべての値について何かの処理をしたい場合などに不便です。そこで、
>keys という演算子をつかって、
>
>for (keys %hp) {
> print "$_ さんのホームページは $hp{$_} です\n";
>}
>
>というようにすることがよくあります。ここで、keys 連想配列名 は
>連想配列のすべてのキーをリストとして返します。先ほどの例なら
>'nir' 'naoki' 'yasuf' という3つの文字列を含むリストが返されます。
>
>ただし、ここでこの3つの順番はまちまちですので(詳しくはCamel Bookを参照してください)、
>順番に並べたい場合は sort keys %hp などのようにする必要があります。
>
>面白いのが、連想配列をリストとして扱った(?)場合の振舞いです。
>上の例などは、
>
>%hp = (
> 'nir', 'http://www2.meshnet.or.jp/~nir/',
> 'naoki', 'http://www.aichinet.or.jp/',
> 'yasuf', 'http//www2.ariake.or.jp/~yasuf/',
>);
>
>というように、キーと値をペアにしたリストを使って一度に代入することが
>できます(うぇぶ会議室のsite.plでもやってますね^^)
>また、reverse演算子を連想配列に対して使うと、キーと値の対応が逆になります。
>つまり、$hp{'http://www2.ariake.or.jp/~yasuf/'} eq 'yasuf' となってしまう
>わけです(同じ値のものがあれば、どちらかがなくなります)
>
>というような感じでしょうか^^;;
ありがとうございます。
実は日曜日9/22にいわゆるらくだ本の初めてのパール”らーにんぐぱある”ていうの
買ってやりながら読んでます。すごくわかりやすくて感動してます。
だいぶ前に買った同じ種類のぱーるぷろぐらみんぐていうの買って見てたんだけど
さっぱり・・・???だったのでどうしようかと思っていたところでした。
%何とかというのにたまたま昨晩読み当たってやっと理解したところでした。
だからごめんなさいって言わなくちゃですね。
この2冊を読めばだいたい分かってくると思う。
それでもだめだったらまた、教えてください。
yasuさんの作ってくれたカウンターのログのプログラムのおかげと
CRONとの併用で毎日ログを取りに会社に来る必要がなくなって
とっても助かってます。ほんとにありがとうございました。
あのプログラムをしっかり理解できたいからぱーるを勉強してるんです。
(それだけじゃないけど・・・)あれがわかればだいたいのことは
できるようになれると思って・・・。
それじゃこれからもよろしくお願いします。
にあさんにも << ありがとうございました。
[NEW]
フォロー記事投稿
記事のキャンセル
From: 北澤@BADKID
<badkid@mxb.meshnet.or.jp>
Subject: 教えて下さい
Date: 1996/09/30 23:29:42
北澤@BADKIDです
教えて下さいますか pealを仕入れたいのですが、何処にありますでしょうか?
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: 教えて下さい
Date: 1996/10/01 01:12:18
Reference: mesh.program/00081
9月30日に、北澤@BADKIDさんは書きました。
>教えて下さいますか pealを仕入れたいのですが、何処にありますでしょうか?
>
たぶん、perl の事ですよね?(^^;;
perlのアーカイブである CPAN (the Comprehensive Perl Archive Network) の
公式ミラーが KDD lab. にあります。
ftp://ftp.lab.kdd.co.jp/CPAN/
ここに行けば、まず、一通りは揃うんじゃないでしょうか?
ちなみに最新(かな?)の perl5.003 は、
ftp://ftp.lab.kdd.co.jp/CPAN/src/5.0/perl5.003.tar.gz (1.5MB)
Win32への移植版は、
ftp://ftp.lab.kdd.co.jp/CPAN/ports/winNT/perl5/perl5.001m/CurrentBuild/110-i86.zip (1MB、インテル版)
などです。
ただし、ネットワークが遅い所からだと download は大変でしょうから、
何かの雑誌の付録でも探した方が良いかも知れませんね。
# にあは全然雑誌とか買わない人なので、(^^;; 何に付いているのかは分かりません。
[RE]
フォロー記事投稿
記事のキャンセル
From: 北澤@BADKID
<badkid@mxb.meshnet.or.jp>
Subject: Re: 教えて下さい
Date: 1996/10/01 07:28:47
Reference: mesh.program/00082
ありがとうです。(^^)
スペルまで間違っていました・・・(^^;
ありました、ありがとうございました m(__)m
[NEW]
フォロー記事投稿
記事のキャンセル
From: こじろぉ
<tmekata@ns1.kyotec.co.jp>
Subject: NTでPerlを使う
Date: 1996/10/02 18:26:04
WindowsNT3.51にNetscapeCommerceServerを
導入したときにPerl5forWIN32を動くようにする設定方法
を教えて下さい。
IISは簡単に出来たんですが、Netscapeはマニュアルが
全部英語なのでわかりませ〜ん(^^;;;
どなたか救いの手を・・・
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: NTでPerlを使う
Date: 1996/10/04 21:16:48
Reference: mesh.program/00084
10月2日に、こじろぉさんは書きました。
>WindowsNT3.51にNetscapeCommerceServerを
>導入したときにPerl5forWIN32を動くようにする設定方法
>を教えて下さい。
>
なかなか、フォローが付きませんね。(^^;;
やはり Netscape Commerce for NT を使っている人は少ないのでしょうね。(^^;;
Unix用の Commerce サーヴァなら、CGI専用ディレクトリの設定や、CGI を
拡張子で認識させるための設定が、ブラウザ経由で出来ますね。
Unix の場合は (ほとんどのものは) カーネルが a.out かスクリプトかを
見分けるのですが、NT はどうなんでしょうか?
Win95用の FastTrack server では、CGI (.EXE 形式) 以外に ShellCGI と
称して、拡張子の関連づけで実行されるものがありますが、NT Commerce では
どうですか? もし同じなら、CGI ディレクトリを設定するのと同じ所で、
ShellCGI ディレクトリの設定もありますが。
# なぜか、Win95 の FastTrack には、拡張子で ShellCGI を起動するための
# 設定がブラウザからは選べないので、直接 mime.types を書き換えましたが。
[RE]
フォロー記事投稿
記事のキャンセル
From: こじろぉ
<tmekata@ns1.kyotec.co.jp>
Subject: Re: NTでPerlを使う
Date: 1996/10/04 21:58:30
Reference: mesh.program/00085
10月4日に、にあさんは書きました。
>やはり Netscape Commerce for NT を使っている人は少ないのでしょうね。(^^;;
(^^;やっぱり?
>Unix用の Commerce サーヴァなら、CGI専用ディレクトリの設定や、CGI を
>拡張子で認識させるための設定が、ブラウザ経由で出来ますね。
NTのCommerceサーバもブラウザから「Netscape Server Manager」
で設定します。
CGI and Server Parsed HTML
Specify a directory that will contain CGI programs only
Specify a directory that will contain WINCGI programs only
* Activate CGI as a file type for part of your server
* Set a default query handler
* Customize server parsed HTML on your server
* Add a custom signature to files
この辺をさわるのでしょうか???
>Unix の場合は (ほとんどのものは) カーネルが a.out かスクリプトかを
>見分けるのですが、NT はどうなんでしょうか?
そのへんはわかりません。(^^;;;;;;;
>Win95用の FastTrack server では、CGI (.EXE 形式) 以外に ShellCGI と
>称して、拡張子の関連づけで実行されるものがありますが、NT Commerce では
IISでは拡張子から判断して「Perl.EXE %S」とかで渡して動いてる
みたいなんですが・・・
>どうですか? もし同じなら、CGI ディレクトリを設定するのと同じ所で、
>ShellCGI ディレクトリの設定もありますが。
>
># なぜか、Win95 の FastTrack には、拡張子で ShellCGI を起動するための
># 設定がブラウザからは選べないので、直接 mime.types を書き換えましたが。
どこを書き換えるんでしょう???
#日本語解説本とかないのかなぁ・・・
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: NTでPerlを使う
Date: 1996/10/07 20:49:02
Reference: mesh.program/00086
10月4日に、こじろぉさんは書きました。
>>Unix用の Commerce サーヴァなら、CGI専用ディレクトリの設定や、CGI を
>>拡張子で認識させるための設定が、ブラウザ経由で出来ますね。
> Specify a directory that will contain CGI programs only
>
これが CGI 専用ディレクトリの設定、
> * Activate CGI as a file type for part of your server
>
これが CGI を拡張子で見分けるのを有効にする設定、でしょうね、たぶん。
これらを設定すると obj.conf に
NameTrans from="/cgi-bin" fn="pfx2dir" dir="..." name="cgi"
とか、
Service fn="send-cgi" type="magnus-internal/cgi"
<Object name="cgi">
ObjectType fn="force-type" type="magnus-internal/cgi"
Service fn="send-cgi"
</Object>
とか言った行が出来ているのが分かると思います。
実際に CGI に割り当てる拡張子は、mime.types の最後の方にある、
type=magnus-internal/cgi exts=cgi,exe
で設定されています。
>># なぜか、Win95 の FastTrack には、拡張子で ShellCGI を起動するための
>># 設定がブラウザからは選べないので、直接 mime.types を書き換えましたが。
>
>どこを書き換えるんでしょう???
>
ShellCGI の設定は上記の cgi の所が shellcgi に変わった行があったので、
その拡張子設定の部分を適当に加えたものです。
# 元々設定が無いのでしたら、加えても使えないとは思いますが。(^^;;
[NEW]
フォロー記事投稿
記事のキャンセル
From: うた
<t94051tu@sfc.keio.ac.jp>
Subject: flockのオペレーション
Date: 1996/10/05 04:48:06
あ、どうも、はじめまして。。
えっと、にあさんの会議室のスクリプトをダウンロードして
拝見させて頂いているのですが、
flockのところで、オペレーションに6を使っていますが、
これはどういう意味なのでしょうか??
何分、全くの初心者なので、教えてください。
お願いします。
(それにしても、すごく良くできていますね。すごい!)
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: flockのオペレーション
Date: 1996/10/07 20:31:14
Reference: mesh.program/00087
10月5日に、うたさんは書きました。
>えっと、にあさんの会議室のスクリプトをダウンロードして
>拝見させて頂いているのですが、
>flockのところで、オペレーションに6を使っていますが、
>これはどういう意味なのでしょうか??
>
6と言うのは (2 | 4) でして、記号で書くと (LOCK_EX | LOCK_NB)、つまり
排他的ロック、かつ、非ブロック、と言うことになります。
こうしておくと、排他的ロックが出来ない時には待たずにエラーを返してくれるので
ロック待ちのプロセスが溜まっていくような事故が防げます。
# この辺のロック事故の事例については、ここの「何でも掲示板」の9月初旬の
# 記事を見ると良いかと思います。(^^;;; ファイルロックに付いても、
# もう少し詳しく議論されています。
## まあ、Mesh のユーザじゃないと分からない所もあるかとは思いますが。(^^;;
[NEW]
フォロー記事投稿
記事のキャンセル
From: なおき@あいちねっと
<naoki@aichinet.or.jp>
Subject: ファイルのパーミッションについて
Date: 1996/10/08 17:01:29
なおきです。
質問があります。
フォームでパスワードを聞いてそれに答えなければ
その秘密のページに入れないというようなことがしたいのです。
が、
もし直接URLを指定してそのホームページにきた場合は
そのページは見られてしまいますよね。
そういう場合の対処ってどんなのがありますか?
そういうことってできますか?
フォームから渡されるCGIプログラムはそんなに難しくはないと思うけど
そのもしもが起こったときは・・・?
どなたか教えてくださいな、おねがいします。
[RE]
フォロー記事投稿
記事のキャンセル
From: こじろぉ
<tmekata@ns1.kyotec.co.jp>
Subject: Re: ファイルのパーミッションについて
Date: 1996/10/08 17:11:24
Reference: mesh.program/00090
10月8日に、なおき@あいちねっとさんは書きました。
>フォームでパスワードを聞いてそれに答えなければ
>その秘密のページに入れないというようなことがしたいのです。
>が、
>もし直接URLを指定してそのホームページにきた場合は
>そのページは見られてしまいますよね。
>そういう場合の対処ってどんなのがありますか?
>そういうことってできますか?
いっつも教えてもらってばっかりなので、たまには貢献せねば(^^;
と言うわけで、私の知ってる限りでは・・・
Webサーバは何をお使いなんですかね?
サーバの種類にもよりますが「ディレクトリ」にアクセス権を付けるとか
ディレクトリ以下にユーザデータベースを適用する等の方法があります。
(これはサーバ側でのセキュリティ方法)
もし、今お使いのサーバがそれが出来ないのであれば、
セキュリティを付けれるサーバへCGIから飛ぶようにする・・・
と言うわけで、基本的にサーバ側で設定が出来なければ、
直接URL指定で来られた場合の対処は出来ないと思います。
以上がだめなら、
最悪はすべてCGIでページを作ってしまうしか無いのでは?
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: ファイルのパーミッションについて
Date: 1996/10/08 17:25:35
Reference: mesh.program/00090
10月8日に、なおき@あいちねっとさんは書きました。
>フォームでパスワードを聞いてそれに答えなければ
>その秘密のページに入れないというようなことがしたいのです。
>が、
>
>もし直接URLを指定してそのホームページにきた場合は
>そのページは見られてしまいますよね。
>そういう場合の対処ってどんなのがありますか?
>そういうことってできますか?
>
やはり、こういうアクセス制限を行ないたい時は、サーヴァが持っている
アクセス制限機構を使うのが安全確実便利です。
最近の Web サーヴァなら大抵サーヴァ自身がアクセス制限機構を持っていますから
パスワード認証にしろ特定ディレクトリへの進入禁止にしろ、ユーザが思い悩む
必要は無く、サーヴァの提供している機構を使うべきです。
例えばプロバイダがユーザにアクセス制限機構の使用を認めていない場合
(ここ MeshNet はそうです)とか、サーヴァがアクセス制限機構を持って
いない場合などは、しかたないですから、全て CGI で記述してアクセス制限
したりします(ここの1号機専用ペーヂなど)が、それは、他に選択肢が無い
場合に限ると思います。
# なおきさんは管理者なんですから、使用目的にあったサーヴァを選ぶべきです。
# そうでないと、後で自分がとっても苦労することになります。(^^;;
[RE]
フォロー記事投稿
記事のキャンセル
From: なおき@あいちねっと
<naoki@aichinet.or.jp>
Subject: Re: ファイルのパーミッションについて
Date: 1996/10/08 18:47:52
Reference: mesh.program/00092
なおきです。こじろぉさんにあさんありがとうございます。
10月8日に、にあさんは書きました。
>10月8日に、なおき@あいちねっとさんは書きました。
>
>>フォームでパスワードを聞いてそれに答えなければ
>>その秘密のページに入れないというようなことがしたいのです。
>>が、
>>
>>もし直接URLを指定してそのホームページにきた場合は
>>そのページは見られてしまいますよね。
>>そういう場合の対処ってどんなのがありますか?
>>そういうことってできますか?
>>
>やはり、こういうアクセス制限を行ないたい時は、サーヴァが持っている
>アクセス制限機構を使うのが安全確実便利です。
(基本が分かっていない質問かもしれないけど)アクセス制限機構というのは
たとえばディレクトリのパーミッションを660とかにするってことですか?
そうするとほかの人はいくら見ようとしても見れないですよね。
これを特定の人に見させるようにする方法がアクセス制限機構というものなのか?
うーん・・・。
とりあえずは直接URLで来ないということを前提にやってみますけど・・・。
># なおきさんは管理者なんですから、使用目的にあったサーヴァを選ぶべきです。
># そうでないと、後で自分がとっても苦労することになります。(^^;;
自分は管理者なのかなぁ・・・。もう一人の人が管理していて僕はそれを見て
覚えていってるんですけど・・・。今のところ二人で面倒見てるという感じでしょうか?
でも僕はまだまだ基本が・・・。ウェブサーバァーの仕組みとかぜんぜんだし・・。
httpd.confとかすこし分かるくらいですね。
後はあちこちにあるログを毎日チェックしたりとか。
cronを覚えたから前よりはだいぶ楽になりましたけど(おかげさまで)(^^;;
[RE]
フォロー記事投稿
記事のキャンセル
From: こじろぉ
<tmekata@ns1.kyotec.co.jp>
Subject: Re: ファイルのパーミッションについて
Date: 1996/10/08 20:11:57
Reference: mesh.program/00093
10月8日に、なおき@あいちねっとさんは書きました。
>(基本が分かっていない質問かもしれないけど)アクセス制限機構というのは
>たとえばディレクトリのパーミッションを660とかにするってことですか?
>そうするとほかの人はいくら見ようとしても見れないですよね。
>これを特定の人に見させるようにする方法がアクセス制限機構というものなのか?
Webサーバを何を使われてるのかわからないのでなんとも言えないですが
多くのサーバシステムにはアクセス制限機構があります。
これは、端末からのアクセスを「IPアドレスで制限」したり
「ユーザ名とパスワードで制限」したり
「ホスト名で制限」したりする機能を、
ディレクトリやファイル単位に指定できるものです。
UNIXやなんかの「ファイルのアクセス制限」のパーミッションとは別物です。
(NTサーバのIISとかだとファイルのアクセス制限をWebに流用出来るんですが)
[RE]
フォロー記事投稿
記事のキャンセル
From: なおき@あいちねっと
<naoki@aichinet.or.jp>
Subject: Re: ファイルのパーミッションについて
Date: 1996/10/08 20:38:02
Reference: mesh.program/00094
10月8日に、こじろぉさんは書きました。
>Webサーバを何を使われてるのかわからないのでなんとも言えないですが
>多くのサーバシステムにはアクセス制限機構があります。
>
>これは、端末からのアクセスを「IPアドレスで制限」したり
>「ユーザ名とパスワードで制限」したり
>「ホスト名で制限」したりする機能を、
>ディレクトリやファイル単位に指定できるものです。
ふむふむ、調べる必要がありそうですね。
うちはCERNを使っています。CERNはそういうのできるのかな。
自分でもいろいろ調べてみます。SunOs4.1.2らしいですね。
>
>UNIXやなんかの「ファイルのアクセス制限」のパーミッションとは別物です。
>(NTサーバのIISとかだとファイルのアクセス制限をWebに流用出来るんですが)
なるほどねぇ。わかりました。ありがとうございます。
[NEW]
フォロー記事投稿
記事のキャンセル
From: うに
<uni@cup.com>
Subject: 圧縮ファイルをダウンロードさせる方法を教えて下さい
Date: 1996/10/09 23:53:59
<a href="">でダウンロードさせるシステムができるようなのですが、
hoge.gzみたいにしたファイルを<a href="">でダウンロードさせようとしても
ヘンな文字化けがでてくるだけでダウンロード用になりません
パーミッションの問題なのかなと思い、いじくってみましたが、
どうもダメみたいです。
MIDIデータをMacGzipで圧縮して張りたいのですが、実行可能でしょうか??
それとも他の圧縮形式でないとダメなのでしょうか??
教えてください。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: 圧縮ファイルをダウンロードさせる方法を教えて下さい
Date: 1996/10/10 00:37:08
Reference: mesh.program/00096
10月9日に、うにさんは書きました。
><a href="">でダウンロードさせるシステムができるようなのですが、
>hoge.gzみたいにしたファイルを<a href="">でダウンロードさせようとしても
>ヘンな文字化けがでてくるだけでダウンロード用になりません
>
リンクをクリックした時には、サーヴァから渡される MIME type に従って動作が
決定されます。また、サーヴァは CGI などでない限り、ファイルの拡張子に基づいて
MIME type を決めます。この拡張子から MIME type への変換は、通常サーヴァの
MIME設定ファイル (mime.types と言う名前のことが多い) に書かれています。
さて、それでは .gz に関する MIME type はどうなっているか?と言うことですが、
これはサーヴァによってまちまちなので、サーヴァの設定ファイルを見なければ
分かりません。
ただし、この頃は .gz は Content-type: を決めず、Content-encoding: を x-gzip に
するだけで、.gz を取った時のファイル名で Content-type: を決める、と言うのが
主流のような気がします。つまり gzip の圧縮はしてもしなくてもブラウザの
ダウンロード動作は変わらない、と言ったものです。
# この辺の設定がどうなっているかは、お使いのサーヴァ管理者に尋ねるか、
# サーヴァの設定ファイルを読んで下さい。
さて、hoge.gz で文字化けになる、との事ですが、hoge.mid.gz と言う名前にしても
ダメでしょうか? 通常 .mid とか .midi は audio/midi になっていることが多いと
思うので、正常にブラウザ側の MIDI ファイル処理に入ると思います。
# この辺は、実際にサーヴァを見てみないと何とも言えない所ですが、
# おかしい動作をするようなら、サーヴァの管理者にアピールして、
# 正しい MIME type を設定してもらうのが良いのではないでしょうか?
[RE]
フォロー記事投稿
記事のキャンセル
From: 楠 哲士
<a9011443@cfi.waseda.ac.jp>
Subject: Re: 圧縮ファイルをダウンロードさせる方法を教えて下さい
Date: 1996/10/10 20:34:39
Reference: mesh.program/00097
10月10日に、にあさんは書きました。
># この辺は、実際にサーヴァを見てみないと何とも言えない所ですが、
># おかしい動作をするようなら、サーヴァの管理者にアピールして、
># 正しい MIME type を設定してもらうのが良いのではないでしょうか?
まったくそうですね。(またcup.comだな。ここは自分でMIMEの設定を追加で
きる。) でも廃人は
<a href="hoge.cgi">hoge.gz</a>
#!/bin/sh
echo "Content-type: application/x-gzip"
echo "Content-Disposition: attachment; filename=hoge.gz"
echo ""
cat hoge.gz
なんてことをするのかな? これはサーバーへの負荷が高いのだろうか?
なお、Content-Dispositionを認識しないブラウザーもあるらしいから、念の
ため <a href="hoge.cgi/hoge.gz">hoge.gz</a> と呼ぶ。/hoge.gzの部分は
ダミー。しかしこれはサーバーのバグ依存なのだろうか?
ブラウザー依存でいいなら
<meta http-equiv="refresh" content="1; http://www.cup.com/uni/hoge.gz">
とも書けるらしい。しかもこれだとサーバーの負荷が軽くなるとか聞いたが、
NPH相当ということ?
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: 圧縮ファイルをダウンロードさせる方法を教えて下さい
Date: 1996/10/10 22:26:28
Reference: mesh.program/00098
10月10日に、楠 哲士さんは書きました。
><a href="hoge.cgi">hoge.gz</a>
>
>#!/bin/sh
>echo "Content-type: application/x-gzip"
>echo "Content-Disposition: attachment; filename=hoge.gz"
>echo ""
>cat hoge.gz
>
>なんてことをするのかな? これはサーバーへの負荷が高いのだろうか?
>
ほう、Content-Disposition: なんてものがあるのですか。
見た所、便利そうですが、HTTP/1.0、HTTP/1.1 どちらの規格にも見当たらないですね。
CGIでファイルを出力すると、ダウンロード時のファイル名が CGI名になってしまうのが
難点でしたので、Content-Disposition: が使えると便利ですね。
サーヴァ負荷と言うことでは、CGI実行に1プロセス、cat実行に1プロセス消費するので、
単なるリンク(HTMLのみ)に比べれば負荷をかけている、とは言えますね。
まあ、実行される頻度との兼ね合いでしょうか。
>なお、Content-Dispositionを認識しないブラウザーもあるらしいから、念の
>ため <a href="hoge.cgi/hoge.gz">hoge.gz</a> と呼ぶ。/hoge.gzの部分は
>ダミー。しかしこれはサーバーのバグ依存なのだろうか?
>
なるほど、これはアイデアですね。
CGIに対するPATH変数は、ブラウザから見ればコンテンツと見分けが付かないですから
ダウンロードされるファイル名はPATH変数のそれになるわけですか。
サーヴァのバグ依存と言うわけではなくれっきとした機能ですが、PATH変数は全ての
サーヴァで利用できるわけではないですから、必ず使えるわけではないですね。
ただし、Content-Disposition: の様にブラウザ依存ではないですら、サーヴァが
対応していれば必ず使えるわけで、こちらの方が安心ですね。
>ブラウザー依存でいいなら
><meta http-equiv="refresh" content="1; http://www.cup.com/uni/hoge.gz">
>とも書けるらしい。しかもこれだとサーバーの負荷が軽くなるとか聞いたが、
>NPH相当ということ?
>
これは単に自動でペーヂを移っているだけですから、CGIで Location: をしているのと
同じで、手動リンクと同じ MIME type を出力するはずです。
[RE]
フォロー記事投稿
記事のキャンセル
From: 楠 哲士
<a9011443@cfi.waseda.ac.jp>
Subject: Re: 圧縮ファイルをダウンロードさせる方法を教えて下さい
Date: 1996/10/11 00:24:42
Reference: mesh.program/00099
10月10日に、にあさんは書きました。
>ほう、Content-Disposition: なんてものがあるのですか。
>見た所、便利そうですが、
>HTTP/1.0、HTTP/1.1どちらの規格にも見当たらないですね。
RFC1806が「Communicating Presentation Information in Internet
Messages: The Content-Disposition Header」という偉そうなものになってます。
>CGIに対するPATH変数は、ブラウザから見ればコンテンツと見分けが付かないですから
>ダウンロードされるファイル名はPATH変数のそれになるわけですか。
>
>サーヴァのバグ依存と言うわけではなくれっきとした機能ですが、PATH変数は全ての
>サーヴァで利用できるわけではないですから、必ず使えるわけではないですね。
>ただし、Content-Disposition: の様にブラウザ依存ではないですら、サーヴァが
>対応していれば必ず使えるわけで、こちらの方が安心ですね。
CGIへのPATH変数なのですか? 僕のmsin.htmlに誰かがhttp://www.cup.com/negi/msin.html/
という形式でリンクを張ったものだから、相対リンクが切れてmsin.htmlから余所へ
「飛べない」との苦情は来るわ、アクセスログは汚くなるわで迷惑(^o^) それで気
付いたのですが、CGIでない普通のページにたいしてmsin.html/hoge.lzhのように
「PATH変数」を付けても少なくともApache 1.1.1では余分な部分は無視して返せる
ページ?を返してくれるようです。msin.html/hoge.lzh/hoge2.gzとしたらどうな
るだろう?(^o^) あとで試そう。
[RE]
フォロー記事投稿
記事のキャンセル
From: にあ
<nir@mxa.meshnet.or.jp>
Subject: Re: 圧縮ファイルをダウンロードさせる方法を教えて下さい
Date: 1996/10/11 01:23:51
Reference: mesh.program/00100
10月11日に、楠 哲士さんは書きました。
>>ほう、Content-Disposition: なんてものがあるのですか。
>>見た所、便利そうですが、
>>HTTP/1.0、HTTP/1.1どちらの規格にも見当たらないですね。
>
>RFC1806が「Communicating Presentation Information in Internet
>Messages: The Content-Disposition Header」という偉そうなものになってます。
>
ははぁ、RFCになっていたのですか。(^^ゞ
# RFC チェックしてないからな〜 手元には70チョットしか持ってきてないし...
# ま、どうせ読んでないから、幾つ持ってても同じだが。(爆)
メールでマルチメディアメッセーヂをやり取りする時に使うオプショナルヘッダとして
考えられたみたいですね。チョット本来の目的とは違う気もしますが、みんなが
使いはじめると HTTP にも取り込まれるのかしらん。
# HTML3.2の例もあるし。(^^;;
以上100記事(キャンセル分を含む)
ホームペーヂに戻る
nir@mvg.biglobe.ne.jp
Last Update: 7 March 1998