68user's page 掲示板

Prev< No. 124〜134> Next  [最新発言に戻る] [過去ログ一覧]
No. 124 # 68user 1999/02/07 (日) 01:01
> yacc は私も挫折しました…ただし、68user さんよりはもっと手前でですが(^
こっちも挫折は早かったですよ〜。
    http://X68000.startshop.co.jp/~68user/tmp/html.l
    http://X68000.startshop.co.jp/~68user/tmp/html.y
うーん、短いなぁ。今見ると、どこがどういう意味なのかさっぱり(笑)

No. 125 # M.Masuda 1999/02/07 (日) 01:42
どうもありがとう68userさん。(^^)/

> > CGIで直接sendmailに書込みした場合のエラーメッセージを取得したい時は、
> 宛先がなかった場合などに返ってくるメールを指して「エラーメッセージ」と
> 言ってらっしゃるなら、
>  http://www2e.biglobe.ne.jp/%7es-hasei/cgi-bin/wwwlng.cgi?print+99020031.txt
> など。
直接行ってみたら、なんとよく行くページの中。
ここの所忙しく、あまり見に行って無かったらなんとリアルタイムな!
灯台下暗しとは、この事?

> -Nは-N failure,successなどと指定できます。manを読むときは、
> 日本語マニュアルを使って楽をしましょう。
>  http://www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&man=sendmail&dir=jpman-3.0.0%2Fman
こんな便利があるとは!なんともうれしい限りです。(^^ゞ
でもうちの環境ではLinuxなので適当に、コンバート?しながら見てみます。

だけど、また暫く睡眠時間が少なくなりそう....(T_T)

ちなみですが。
http://X68000.startshop.co.jp/~68user/Cgi-room/printenv.cgi
で書いてあるなかで REMOTE_PORT を、「ポート番号とは全く関係なくて、httpdをforkした回数じ
ゃないかなぁと思ったらこれも違うみたい。よくわからん。」と書いてありましたが、そのまんま
です。(^^)

つまりクライアント側が、webサーバーの80ポートにアクセスする際に使用する、クライアント側の
ポートの番号です。
私の使用しているパケットモニターで確認しました。
クライアント側アプリケーションが、通信の際にソケットを生成するとその時に自動的に割り当て
られるみたいです、アプリの処理方法はそれぞれでなんでしょうが、通信セッション(っていうのかな)
が終わる毎にクライアント側のポートが変わりました。
#まじめに勉強した訳でなくパケットモニターでの通信内容をみて書いてます。(^^ゞ

No. 126 # mm 1999/02/07 (日) 20:44
>http://X68000.startshop.co.jp/~68user/tmp/html.l
>http://X68000.startshop.co.jp/~68user/tmp/html.y
ありがとうございます。なんとなく雰囲気はわかるような気がします(^o^;ゞ

ただ、lexでは"<BODY>"とかをトークンとして扱ってますよね。
こういう方法で <BODY GBCOLOR="#ffffff"> のような属性を持ったものも
扱えるのでしょうか?
よくは分かってないんですが、lexではトークンを正規表現で切り出しますよね。
だから、<>内をまとめて切り出すのは難しいような気がするのです。
それとも、<>内はまた別のルールでトークンに切り分けるのかな…?

No. 127 # 68user 1999/02/08 (月) 01:09
> REMOTE_PORT
どうもです。これを設置したのは去年の6月ですから、その当時はよく
わかってなかったようですね。ちなみに当時は、
    「サーバ側はポート80で待っているが、一旦コネクションが確立されると、
        次のクライアントのために一刻も早くポート80を開けなければならないので、
        新しいポートが(CGIに)割り当てられる。CGI側はそのポートを通じて
        クライアントと通信しなければならない」
のではないかなぁ…と思っていた記憶があるような ないような。

> でもうちの環境ではLinuxなので適当に、コンバート?しながら見てみます。
いや〜、おそらくLinuxにもjmanはありますよ。僕はLinux知らないけど、
ないはずがないと思います。


> ただ、lexでは"<BODY>"とかをトークンとして扱ってますよね。
どうなんでしょう? 僕は挫折した人間なのでよくわかりませんが(^^;
weblintなどもperlでやってるんで、HTMLチェッカはyacc&lex向きじゃ
ないのかもしれませんね。

No. 128 # mm 1999/02/08 (月) 03:11
>weblintなどもperlでやってるんで、HTMLチェッカはyacc&lex向きじゃ
>ないのかもしれませんね。
なるほどー
文脈自由文法とかがちゃんと分かってないので、まだ?なんですが…(^^;

Cで言語処理系のプログラムを書く機会があったら、またちゃんと勉強しようと
思いつつ、そのままになってるんですが、Windowsなんかを使ってるとどんどん
遠ざかって行くような気がします(^^;;;


日本語マニュアルもありがとうございました。
とりあえず、ウチのサーバーのmanの出力は読みやすくはなったのですが、
やっぱ日本語だと助かります(^^;

No. 129 # クーロンで苦労!? 1999/02/08 (月) 09:14
68userさんへ
ありがとうございます。
参考にさせて頂き、もうちょっとやってみます。

No. 130 # M.Masuda 1999/02/12 (金) 15:54
こんにちは。

CGI実行中のバッファのフラッシュについてなんですが。

具体的には、あるサーバーのログ20Mb以上を圧縮して取り出すのに、

CGIで圧縮ファイルを生成→生成されたファイルをDownLoadする。

というCGIで、全ての処理にかなり時間が掛るのと、ブラウザの
TimeOutをさける為に、処理過程を画面に出力しながら処理を続け
る動作のスクリプトです。

$|=1でバッファのフラッシュを指定できますよね。
確かに、シェル上で直接実行すると動作の確認が出来ましたが、
ブラウザ上から実行すると、スクリプトが全て終わってからでない
と画面に出力されません。

他で聞いたところによるとサーバー(Apacheです)が、CGIの処理が
終わらないとダメみたいです。

ただ、その際STDOUTをクローズすると出力されると言っていたので
、実験しましたがダメでした。
#close後は出力されない

また、ある程度の出力(環境で違うらしい)が溜まるとWebサーバー
がバッファをフラッシュするとも書いてありましたが(未確認)、
無駄な出力をさせたくありません。

なにか、いい方法は無いでしょうか?


>いや〜、おそらくLinuxにもjmanはありますよ。僕はLinux知らないけど、
>ないはずがないと思います。
見つけたんですが、ローカルコンソール(本体)上でxの仮想コンソール?
からなら表示できるんですが、telnetで指定するとmanを表示している?
lessが2バイト文字に対応してないみたいで、読めません。(; ;)
jmanってコマンドですよね、それも無いです。(T_T)
#そもそもtelnet上のmanで日本語表示はダメなんでしょうか?
#ちなみにtelnetは Tra Termを使ってます。

>> REMOTE_PORT
いやーパケットモニターで生の通信内容見てると、結構勉強になります
セキュリティーとかいろんな事の考え方も変わりますね。

No. 131 # 68user 1999/02/12 (金) 17:07
つまり、処理結果を小だしに表示させてタイムアウトを防ぎたいわけですね。
http://www2e.biglobe.ne.jp/%7es-hasei/cgi-bin/wwwlng.cgi などはそのように
できていますね。僕も前に疑問に思って質問したのですが、結局ローカルでは
うまくいきませんでした。

で、そういう場合はnphスクリプトを試してみてはいかがでしょうか。とほほさんの
webに解説があったはずです。

> #close後は出力されない
そうですね。closeするとコネクションは切れます。


> lessが2バイト文字に対応してないみたいで、読めません。(; ;)
FreeBSDではjlessというのがあり、環境変数でLESSCHARSETなどを
設定する必要があります。Linuxもそういうのはないですか?

> jmanってコマンドですよね、それも無いです。(T_T)
んー、そのサーバを誰が管理しているのか知りませんが、
ただ単にインストールしてないだけ、ってことはありませんか?

誰かLinux使いの方いません?(^^;

No. 132 # masuda@excel-net.co.jp 1999/02/13 (土) 00:26
>http://www2e.biglobe.ne.jp/%7es-hasei/cgi-bin/wwwlng.cgi など
>はそのようにできていますね。僕も前に疑問に思って質問したのです
>が、結局ローカルでは うまくいきませんでした。
これって見てみたんですが、わかりませんでした。(T_T)
#この行だけ見て、暫く解析してたり発言をみていたので時間食って
#しまった!

>で、そういう場合はnphスクリプトを試してみてはいかがでしょうか。
>とほほさんのwebに解説があったはずです。
この行を、後で見直して思い出しました。
これって解説ページを後で試そうとブックマークに入れっぱなしでし
た。
後日試してみます。
#誰かホントに1日を30時間に....(エーかげんにしなさい!?)

>> lessが2バイト文字に対応してないみたいで、読めません。(; ;)
> FreeBSDではjlessというのがあり、環境変数でLESSCHARSETなどを
> 設定する必要があります。Linuxもそういうのはないですか?
j*シリーズは私の探したところ見つかりませんでした。(; ;)x2
#どうもJフレンドリーなのはFreeBSDの方が上手みたいですね。
でも日本語マニュアル

>んー、そのサーバを誰が管理しているのか知りませんが
だれも管理してなかったりして。(^^ゞ
セキュリティーのため詳しくは書けませんが、非常に恐いサーバで
す。
#いろ〜んな意味で。

>ただ単にインストールしてないだけ、ってことはありませんか?
そうかもしれないけど、仮にパッケージには入っていてもインスト
ールしてまでは弄れないだろうなぁ。
試験環境として自由に触らせてもらってはいるけど、これ以上私に
は言えない...。

でもここ、
http://www.jp.freebsd.org/man-jp/search.html
よく出来てるんで、利用させてもらいます。
どうもです。(^_^)V

No. 133 # ABCDEFG 1999/02/13 (土) 18:17
こん**は

>>j*シリーズは私の探したところ見つかりませんでした。(; ;)x2
こちらかと
http://www.linux.or.jp/jman/

LANGがja_JP.ujisなら
/hoge/man/ja_JP.ujis以下検索しますよーん

No. 134 # 1999/02/13 (土) 20:11
どうもです、68userさん。(^^ゞ

>で、そういう場合はnphスクリプトを試してみてはいかがでしょうか。
>とほほさんのwebに解説があったはずです。
やってみました。おかげで思うとおりの結果が得られました。
ありがとうございました。
これで忘れられてたブックマークもうかばれるでしょう。笑

ちょっと試験でいろいろやってみましたが、これってhttpサーバーが
リクエストに対して(GETやHEAD等)を判断して返す処理と同じ事を、
CGI側で行なうって事なんですね。
と言う事は、Apacheでサポートしていない(と思う)DELETEとかOPTIONS
を指定するとnphのCGIでいろんな事出来そうですね。
#でもちゃんとセキュリティーを考えないと恐いけど(^^ゞ


ありがとうございます。>ABCDEFGさん。
>>j*シリーズは私の探したところ見つかりませんでした。(; ;)x2
よく探したら有りました!
#なんて探しかたの悪いやっちゃ(^^ゞ

http://www.linux.or.jp/jman/
これってうれしすぎる!!!

そのついでといっちゃなんですが、その環境を使えるようにする方法を
教えては頂けないでしょうか。
#調子よすぎかな!?(^^ゞ

つまり、自分の環境でj*環境を使う方法です。
最初からの設定で、シェルはbashを使っています。
環境ファイルは ~/.bashrcデスよねぇ。
ここにどんな記述をすればいいのか教えてくれるとうれしいです!

今の設定はこうなっています。
$ more ~/.bashrc
# .bashrc

# User specific aliases and functions
# Japanese environment setting.

if [ $TERM = "kterm" ] || [ $TERM = "kon" ]; then
      LANG="ja_JP.ujis"
else
      LANG="C"
fi

export LANG

alias ls='ls -F --color=yes'

# Source global definitions
if [ -f /etc/bashrc ]; then
                . /etc/bashrc
fi

↑ここまでです。
シェルはあんまり勉強してないので、人に教わったlsのalias行を
追加したぐらいで、構文の意味はぜんぜん分かりません。
#多分jmanpath=hogehogeとかやるんでしょうね。

日本語のマニュアルが使えれば今までの苦労も少しは....(^_^)V

Prev< No. 124〜134> Next  [最新発言に戻る] [過去ログ一覧]