68user's page 掲示板

Prev< No. 2158〜2166> Next  [最新発言に戻る] [過去ログ一覧]
No. 2158 # 68user 2001/09/30 (日) 20:33:52
>>2157
> hogeとかfugaは知らなかったので……。
hoge の意味ですか? ならこちらを。
    http://www.selab.tutkie.tut.ac.jp/~yoshida/hoge.html

> require 'jcode.pl';
> jcode::convert(\$str, 'euc');
> jcode::h2z_euc(\$str);
それで正しいと思います。

それでも化けるなら、文字列処理をしている全ての処理
    - ブラウザから渡された「%8e%b1%8e%b2」というような URL エンコード
        された文字列
    - & で split した文字列
    - = で split した文字列
    - URL デコードした文字列
    - EUC に変換した文字列
で、print 文でデータを出力してみて下さい。そしたらどこで化けて
いるかわかるでしょう。また、フォームが書いてある HTML の文字
コードが何になっているかも調べて下さい。

わからなかったら、最小限まで切り詰めたソースを見せて下さい。

>>> if ((@file1[9]) > (@file2[9])) {
>> スライス?
> すみませんが,意味がわかりませんでした。
$file1[9] が正しい、ってことでしょう。

> ちなみに,このやり方は本屋で買った書籍から知りました。
$file1[9] や (@file1)[9] なら正しいですが (わざわざ後者の書き方を
する必要はありませんが)、@file1[9] は誤りです。本当にそう書いてあるなら
その本は捨てましょう。

>>2156 Nira
> CONNECT **.com:443 HTTP/1.0
> HOST: **.com
ここまでは正しいと思います。その後は暗号化したリクエストを
送りますが…暗号化まで自力でやろうとしておられます?

No. 2159 # Nira 2001/10/01 (月) 12:23:45
>>2158 68user
ご返答ありがとう御座います。

>ここまでは正しいと思います。その後は暗号化したリクエストを
>送りますが…暗号化まで自力でやろうとしておられます?

CONNECTメソッドまでは正しいですか。
暗号化を自分でやるだけの知識は無いです。(--;)
CONNECTした後は、サンプル通りのにやっているのですが、
SSL_connect()で0が返ってきます。
方法が正しいなら他の部分のバグかもしれないっすね。

そういえば、httpsの取得に良いサイトを発見しました。
https://www2.ggn.net/cgi-bin/ssl
です。http://www.moxienet.com/lynx/ssl-testから
リダイレクトされるサイトで、LynxでSSLが使用できる
かどうかをチェックするためのサイトらしいです。

No. 2160 # Nira 2001/10/01 (月) 13:29:18
>>2158 68user
ありがとう御座いました。

理由はわからないのですが動くようになりました。
SSL_load_error_strings();
の後に
  ERR_load_crypto_strings();
  ERR_load_SSL_strings();
  OpenSSL_add_all_algorithms();
を追加してみたら、難なく動きました。(--;)
http://www.openssl.org/docs/crypto/BIO_f_ssl.html
のサンプルを見てたら、上記3つの関数を呼んでいたので
真似してみました。

お騒がせ致しました。m(_ _)m

No. 2161 # あやの 2001/10/02 (火) 15:08:46
はじめまして
最近CGIを作りはじめたして、問題が・・・

サーバはUNIXでCGIの処理を行なった後に作られたファイルの所有権がすべてnobodyになってしまっていて、その作られたファイルの操作が全くできなくなってしまいました。所有権の変更も出来ないんです。
だれか助けて下さい。。
おねがいします。

No. 2162 # 68user 2001/10/02 (火) 16:51:17
>>2159 Nira
> そういえば、httpsの取得に良いサイトを発見しました。
ありがとうございます。このページをサンプルとして載せておきます。

>>2161 あやの
> その作られたファイルの操作が全くできなくなってしまいました。
    #!/usr/bin/perl
    system("rm -f ファイル");
    print "Content-type: text/plain\n\n";
    print "File removed.\n";
というような CGI スクリプトを作って、ブラウザから CGI に
アクセスすれば消せます。

> 所有権の変更も出来ないんです。
普通ファイルの所有者を変更できるのは root のみです。
# 設定次第でできる OS もありますが。

よって、
    - 事前にファイルを作成しておき、nobody が中身を変更できる
        ようにパーミッションを設定する。
    - ファイルの所有者は nobody とし、他のユーザがそれを
        参照・変更できるようにパーミッションを設定する。
    - ファイルの所有者を nobody 以外とする。
            サーバ管理者に suExec や cgiwrap を入れてもらうか、
            自分で suid なプログラムを作る。
            # http://x68000.startshop.co.jp/~68user/webcgi/permission.html
のいずれを選ぶ、ということになります。

No. 2163 # けんじ 2001/10/02 (火) 18:37:28
はじめまして、こんばんはっす。
突然ですがシェルスクリプトをつかってファイルを
書き換えようとしてるのですが
"ディレクトリースタックの番号指定が深過ぎます."
とコメントされ動いてくれません。どういうことなんでしょうか?
ちなみに このシェルスクリプトです。
わかるかたがいたら教えて下さい。
#!/bin/tcsh
set d=1
while(d<=16){
  cat -n invar3_$d.dat > ninvar3_$d.dat
  d++}
end

No. 2164 # 68user 2001/10/02 (火) 19:48:51
>>2163 けんじ
突っ込みどころがたくさんありすぎて書ききれないので、とりあえず
動くものを置いておきます。
    #!/bin/tcsh
    set d=1
    while ( $d < 16 )
        cat -n invar3_$d.dat > ninvar3_$d.dat
        @ d = $d + 1
    end

まずはマニュアルか、初心者向けの csh プログラミングの本を
読んで下さい。よい本が見付からなければ sh で書くのも手です。
sh なら結構な種類の本が出ています。

No. 2165 # けんじ 2001/10/03 (水) 14:29:33
すいません、丁寧に教えていただき
ありがとうございます。
はい、もっともっと勉強していきます!

ただ、perlやshではうまくいってくれるのですが
なぜかcshでは教えてくださったようにしても
"デレクトリースタックの番号指定が深過ぎます."
といって動いてくれません。

特になにも変更等していないのですが、、、、。
なにはともあれありがとうございました!

赤色の文字は 「Windows 機種依存文字」か、いわゆる「半角カナ」です。 この掲示板では自動変換されますが、今後は使用しないで下さい

No. 2166 # かな 2001/10/03 (水) 18:44:11
とても長いCGI処理がしたくてforkで子プロセスに処理を投げてあげたときは、ブラウザがすぐ開放されることは分かったんです。でも、処理中にエラーとか発生したときは見た目で分からなくなっちゃうんですよね??
エラーのときはなんか表示させたいのですが良い方法はあるのでしょうか?
それとも長い処理はもっとfork以外の違う方法があるんですかね??

よろしくおねがいします。。。

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