CGIだけど、なんか質問ある? Part 10
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/03/26 22:47ID:44KxXtaW※CGIは特定の言語に依存するものではありません。
※Perlのコーディングに関する質問は専用スレがありますのでそちらでお願いします。
↓
【Perl】初心者コーナー Part21
http://pc2.2ch.net/test/read.cgi/php/1047980851/l50
過去ログ・関連スレッドは >>2-5 あたりに
0608nobodyさん
03/05/17 16:30ID:oD7yzjk5機能盛り沢山のゲームCGIを作るというのは無謀な事でしょうか。
0609nobodyさん
03/05/17 16:33ID:???0611nobodyさん
03/05/17 16:35ID:???始める前から出来るか出来ないか聞くような人はプログラミングに向いてない。
プログラマーは作ると決めたら出来ない予想図など浮かべない。(システム的に無理なのは別として)
0612動画直リン
03/05/17 17:08ID:w1ZjXwV80613nobodyさん
03/05/17 18:06ID:6eJYa860cgiのどの部分をいじればいいのでしょうか?
0614nobodyさん
03/05/17 18:09ID:???0615nobodyさん
03/05/17 21:02ID:???・全てのフリーで配布されているCGIに共通の改造方法があると考えている。
・HTMLの知識がないため、タイトルバーとやらの内容がどこで規定されているかわかっていない。
・CGIが、一般的にはHTMLを吐き出すプログラムのことだと言う知識がない。
まあ、要するに、カエレ!と。
0618nobodyさん
03/05/18 03:18ID:???どういうのを言うんですか?
0620nobodyさん
03/05/18 03:43ID:???別にCGIに限った話ではないけれども。
クロスサイトスクリプティング攻撃
バッファオーバーフロー攻撃
共用サーバーで自作スクリプトを置くくらいなら、この二つに対策すべきだろう。
後はアクセスログを自前で取って、攻撃を受けた後の建て直しを早くするとかな。
これも共用サーバーでやる場合の話だが。
0621nobodyさん
03/05/18 03:46ID:???>>620 が言うとおり、何もしなければ穴もないと言う。
どっかの大学でサーバーのセキュリティを強化するとかしないとか話をした時に、
年だけ食ったネットとか知らない教授が叫んだとさ。
「そんなに大変なら外部から切り離せ!」
能力のない奴は最初からするなと言う教訓だな。
0622618
03/05/18 04:07ID:???>>620
クロスサイトスクリプティング攻撃
バッファオーバーフロー攻撃
この2つについて激しく調べまくってきます!
>>621
無能なので、もっと勉強します(;つД`)
0623nobodyさん
03/05/18 07:48ID:+ynHhkj6IEで自分のサイトでCGI中のdat(リンク集だが)を落とせなかった。
他に落とせる方法ってありますか?
最悪のことにFTPのパスは紛失しちゃいました…
プロバに問い合わせ中だが、この5日間返事来なし。
0624nobodyさん
03/05/18 07:55ID:???直リンすればダウンロードできるっしょ。
パーミッションとかで制限してれば駄目だが。
わかんなければパスが来るまで我慢しる。
0625nobodyさん
03/05/18 08:36ID:???0626nobodyさん
03/05/18 08:51ID:???0627nobodyさん
03/05/18 11:52ID:Mb+lURveただし、書き込まれたものは非公開のやつがいいです。
0628nobodyさん
03/05/18 11:54ID:???こんなCGI探してますスレッド ver.9
http://pc2.2ch.net/test/read.cgi/php/1051456859/
0629nobodyさん
03/05/18 12:51ID:???下らん質問ですみません。
0631629
03/05/18 13:51ID:???認証パスワードを発行するために"***.cgi"の中にあった記述で、
「このCGIスクリプトを実行して得られた暗号文字列を〜」 の一部だったんですが・・・
これでわかりますか?
0632nobodyさん
03/05/18 13:53ID:???どっかのサイトのフォームか?
0635629
03/05/18 14:11ID:???0636nobodyさん
03/05/18 14:18ID:???使っているのがWindowsだと仮定して。
1.
ActivePerlがインストールされている状況で
DOSプロンプトを立ち上げ、
そのCGIがあるディレクトリに移動し、
perl ***.cgi
と入力する。
2.
FTPで鯖にアップし、
適切なパーミッションを設定し、
IEなどのブラウザでそのURLにアクセスする。
1.の方法はデバッグのための基本なので覚えるべし。
0637nobodyさん
03/05/18 14:22ID:???標準DESでパスをハッシュ化するスクリプトかな。
パスを発行するってのがどういう意味か分からないけど。
0638nobodyさん
03/05/18 15:12ID:pwwJTDq+フォルダB
フォルダC
路ttpdフォルダ
湾erlフォルダ
↑という状態でフォルダAにあるCGIは動作するんですが、
フォルダBやCにあるCGIを動作させようとするとページを表示できませんとなります。
どこの設定が間違ってるんでしょうか?
0640629
03/05/18 15:18ID:???そのCGIがあるディレクトリに移動し、 perl ***.cgi と入力する。
何もおきませんが。
0642629
03/05/18 15:28ID:???0643nobodyさん
03/05/18 15:31ID:???0644nobodyさん
03/05/18 15:49ID:???>'perl' は、内部コマンドまたは外部コマンド、
>操作可能なプログラムまたはバッチ ファイルとして認識されていません。
こんな感じのエラーが出るはずだけど、何も起きないってことは、実行されてるけど
結果を返してないだけかも。
やっぱりサーバー経由で実行させるのがいいかもしれない。
(ここまで書いておいてなんだが、Windowsから入った人に「パスを通す」っていうのが
理解できるのだろうかといつも思うのだけど)
0646nobodyさん
03/05/18 16:04ID:???もう面倒だから鯖にアップしちゃえ。
0647nobodyさん
03/05/18 16:06ID:???CGIからクッキーを使うと、cgi-bin/って名前のクッキーができて、
JavaScriptからだと、〜@localhost/って名前のクッキーが出来る。
これを一つにして、JavaScriptから書き込んだデータをCGIから
CGIから書き込んだデータをJavaScriptから読み込みたいです。
JavaScriptはスレ違いですか、よろしくお願いします・・・
0649nobodyさん
03/05/18 16:18ID:???0651nobodyさん
03/05/18 16:23ID:???厄介なのはお前のおめでたい脳味噌だ。履き違えるなこの野郎。
パスが通ってないならパスを通せ。
それか2の方法は試したのかよ。
寝言はできること全部試してからほざけ。
0652nobodyさん
03/05/18 16:25ID:???そう熱くならずにそれなり程度にアドバイスすればよいと思う
のだよ。
0653629
03/05/18 16:41ID:???***.cgiの中身は何も変わらん。
0654nobodyさん
03/05/18 16:43ID:???出てきたら駄目。
>cgiの中身は何も変わらん
あたりまえ。
何がしたかったんだか。あきらめて鯖上で動かしたほうがいいってばよ。
0655nobodyさん
03/05/18 17:03ID:???スクリプト名とか配布先を出せば話が早いのにそれもしないやつだし
0656nobodyさん
03/05/18 17:39ID:???ttp://wondercatstudio.com/
のBBS NOTE(お絵描き掲示板)なんですが、質問させて下さい。
半角カナの文章投稿についてなんですけど、
全角-ハンカク-全角
のような文字列の投稿だと問題ないのですが、
ハンカク
のように、一行に半角文字のみの部分があると、そこだけ文字化けしてしまいます。
それでbbsnote.cgiの
&jcode'convert($_,"sjis")if($jcode_pl=~/jcode/);
の部分を削除してみたんですが、文字化けは起こらなくなりました。
ただIEでしか確認していないため、他のブラウザによって起こる不具合が心配です。
他になにかいい解決法ってないでしょうか?
0658nobodyさん
03/05/18 17:54ID:???その削除した部分は、ShiftJISへの文字コード変換をしているわけだけど
元の文字コードは自動判別してる。このとき、文字列が半角カナだけだと
自動判別に失敗してしまう。だから文字化けする。
投稿ページが必ずShiftJISで表示されて、なおかつフォームには必ずShiftJISで
入力されるという前提であれば、そのままでかまわないと思う。
たぶん他のブラウザでも大丈夫ではないかと。
0659nobodyさん
03/05/18 18:19ID:???jcode.plに差し替えただけでは、やはり文字化け投稿になってしまいました・・
>>658
IEでは投稿フォームの表示されるページは、
METAタグでcharset=Shift_JISとされているので大丈夫そうですね。
最近の、主に使用されているブラウザなら問題ないでしょうか。
しばらくこれで運用して、様子を見てみようと思います。
ありがとうございました。
0660nobodyさん
03/05/19 15:36ID:9wygWKWpIISで動くCGIがanHttpdで動かなかったりその逆があったりするんですが
どう書き直せばIISで動く、anHttpdで動く、と言うようになるんですか?
0661nobodyさん
03/05/19 16:53ID:???運用上問題のないレベルで思い通りに動けば良い
という考え方でプログラムやスクリプトを組むのってどうなんですか?
仕様上、ブラウザがフォームから送信する文字コードに決まりはないのに
大多数がそうだからといって、文字コード変換を無くしてしまうというのは
アリなんですか?
文字コード変換処理ってそんなに重かったりするんでしょうか?
0663nobodyさん
03/05/19 18:21ID:???とは言え、他サイト様に迷惑かけるようだと話は別だが。
0664nobodyさん
03/05/19 20:09ID:???締め切りとかの関係でどうしてもと言う場合もある。
プログラマーの個人的な美意識とか職人意識として、
その主張はとてもよく理解できるが、
自分一人でやってるわけではない場合には、涙を飲む必要もたまにはあるだろう。
0665nobodyさん
03/05/19 23:44ID:???航空機をニアミスさせたり銀行のATM止めたりするんだろうね。納得。
0666nobodyさん
03/05/20 00:02ID:???それは運用上問題が出てるだろ。
「運用上問題のないレベル」が前提の話で何を言ってるんだ。
0668nobodyさん
03/05/20 08:03ID:???航空機は違う、ATMはそうかもしんない、>666に対してはその指摘は妥当する。
車社会で交通事故死亡者が1万人/yくらいいても運用しなきゃいけない、と例えれば納得?
>667
君がそう思うなら、そうかもしれないね。
0670nobodyさん
03/05/20 09:44ID:???だったら最初から質問にもならないはずなのに。
何らかのかたちで問題が浮上することを頭の片隅で予想できてしまっている
ということではないの?
そういう状態にOKを出すというのは、とても問題でしょ。
ということが言いたいだけ。
0671nobodyさん
03/05/20 10:09ID:???0672nobodyさん
03/05/20 10:47ID:???そんな連中は、>>671 のようなことを考えてる。
しかも、直すのは自分ではない。だからこそそんな無責任なことが言える。
納期とかなんとかは、本来プログラマたちがストライキを起こしてでも確保すべき資源なんだ。
うまく言いくるめられてるプログラマたちが多すぎ。
0673nobodyさん
03/05/20 11:20ID:???0674nobodyさん
03/05/20 13:41ID:???経営者や営業ほど問題を嫌がると思うけどな。
問題が起きた時、プログラマはプログラムを直せばいいだけだが、
経営者や営業は顧客の信用回復に奔走させられる。
信用を得るのには1年かかるが、失うのは1日で足りる。
まぁ、そのリスクと納期を天秤にかけた時どっちをとるかはその会社次第だろうが。
0675nobodyさん
03/05/20 13:49ID:???0676656
03/05/20 14:39ID:???私の場合、配布されているスクリプトではお客さんの性質もあり、
半角文字化けが多発するのは運用上の大問題なわけです。。
ここで長々とスクリプトをどう改造すればよいかと聞くのも何ですし、
未知の不具合には目をつぶり、お手軽な方法を取ってしまいました。
でも2ちゃん掲示板等ではしっかりと半角が文字化けせずに投稿できるので、
スクリプトを工夫すればなんとかなるであろうことは、素人の私にも分かります。
これで良しとはせず、もう少し調べてみようと思います。
スレ汚しスマソ
0678nobodyさん
03/05/20 21:54ID:???絶対文字化けしないけどな・・・
0679nobodyさん
03/05/21 04:10ID:???変換する時にどっちなのか判断間違えて文字化けするんだっつーの。
0680nobodyさん
03/05/21 06:42ID:???:
<input type="hidden" name="jcode" value="あ">
:
</form>
↓
%form;
read(STDIN, $_, $ENV{'CONTENT_LENGTH'});
foreach (split(/&/)) {
my ($name, $value) = split(/=/);
$value =~ s/%([a-fA-F0-9]{2})/chr(hex($1))/eg;
$form{$name} = $value;
}
if ($form{'jcode'} =~ /\x82\xa0/) {print "S-JISだよ。jcode.pl使わないよ"}
if ($form{'jcode'} =~ /\xa4\xa2/) {print "EUCだよ。jcode.pl使うよ"}
0681nobodyさん
03/05/21 09:57ID:???EUCの文字列と判別不可能なの。
0682nobodyさん
03/05/21 13:41ID:???思うし。技術的に95%までしか無理なんだったら、そう営業に伝えて95%であることを
客に飲んでもらわなきゃいかんと思う。
それを自分の技量を棚に上げて、「運用上問題ない」とか判断して注文を
無視しているいる所にむかついてた。
0683nobodyさん
03/05/21 15:24ID:???過去に、form内の要素一つずつ
別の文字コードで送ってくるブラウザがあったのでそれでもあてにならん。
0684nobodyさん
03/05/21 16:18ID:???0685nobodyさん
03/05/21 21:05ID:???2chはPerlじゃありませんから。
0686nobodyさん
03/05/21 23:39ID:???飛ぶときと飛ばないときがある。なんで?そんなことってあるの?
調べたところ一部のサーバーではLocation禁止というところも
あるみたいだが、うちは飛ぶ。
でも飛ばないときもある…
0688nobodyさん
03/05/21 23:52ID:???0690nobodyさん
03/05/22 01:01ID:???鯖によっては広告がLocationヘッダの邪魔をする場合があるな。
metaに変えるか、htaccessでLayoutIgnoreURI *.cgiやってみるとか。
0691山崎渉
03/05/22 01:55ID:???0692nobodyさん
03/05/22 19:44ID:MWXX6xXGアクセスがなくても数分ごとにカウンターの数が増えたり
1回アクセスがあるとランダムで1または1以上カウンターの数が増えるような
胡散臭いアクセスカウンターは作れるでしょうか?
どなたかご教授ください。
0694nobodyさん
03/05/22 20:13ID:MWXX6xXGええと、それはごく普通のカウンターのCGIを少し改造すれば可能な事なんでしょうか。
出来ればその方法を少し具体的に教えていただけるとありがたいのですが。
0695nobodyさん
03/05/22 20:44ID:???以下の二つの点で頭が悪すぎです。
1.無駄に訪問者を多くみせかけようとする
2.その程度、人に聞くより自分で考えた方が早い
GWは終わりましたよ?
0696nobodyさん
03/05/22 20:45ID:???まず、
> アクセスがなくても数分ごとにカウンターの数が増えたり
こんな事はしなくていい。
アクセスがないときにカウンタを回して誰が見るの?
> 1回アクセスがあるとランダムで1または1以上カウンターの数が増える
1からあなたが望む数までの数字をランダムで発生させるルーチンを作る。
アクセスがあったら、今までのアクセス数に、発生させた数字を加えて新たなアクセス数として表示する。
0697nobodyさん
03/05/22 21:23ID:4XPxMPwJ0699nobodyさん
03/05/23 07:30ID:xpCjHE6k一般的に、書き込む場合
ログを読み込む>内容を変数に入れ>内容の入った変数+書き込む内容>ログに書き込む
ような処理をして効率悪く思います。この他にはどういったやり方がありますか?
0701nobodyさん
03/05/23 08:27ID:???追記モードで書き込めば、読み込みしなくていいぶん負荷は減るかも。
でも普通は書き込みより読み込みのほうが圧倒的に処理回数が多いわけだから
2ちゃんぐらいの規模でもない限り、あんまり効果は期待できない感じがする。
0703699
03/05/23 09:41ID:J32UtBFoなにぶんパールは初心者なもので知ったかでBBS作ってみたのです。
作ったBBSは半年以上触っていませんが、久しぶりに触ってみようかなと・・
>>700
KENTさんのBBS見ても何が悪いのかさっぱりなんです。あれの何処が悪いの?
0704nobodyさん
03/05/23 10:29ID:???最初は Kurl で勉強してから perl に移行する。
これ常識。
0705nobodyさん
03/05/23 10:40ID:???何処が悪いって、何処か悪いの?
どれだけ負荷を与えない処理をするか・・・
それは、ログの管理の仕方によっても違ってくるし、
ログの出力の仕方によっても変わってくる。
とにかく、基本的には・・・
いかにファイルからの入出力のデータ量を減らすか。
BBSはこれが一番の課題だと思う。
もちろん、特殊な出力の仕方とかしてたら、
他にも課題はあるだろうけど。
0706nobodyさん
03/05/23 11:41ID:aeupPdc0■ このスレッドは過去ログ倉庫に格納されています