CGIだけど、なんか質問ある? Part 8
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/09/22 23:15ID:???※CGIは特定の言語に依存するものではありません。
※Perlのコーディングに関する質問は専用スレがありますのでそちらでお願いします。
↓
Perl 初心者コーナー Part16
http://pc.2ch.net/test/read.cgi/php/1032070299/l50
過去ログ・関連スレッドは >>2
0296294
02/10/12 22:22ID:???じゃあミスっているわけないな。
0297275
02/10/12 22:29ID:3wVM2eMFやはりTripodの制限にひっかかってるのでしょうか…?
0298nobodyさん
02/10/13 00:32ID:???多分サーバーのほうで、アップローダ系は設置できないように
してあるんだと思います。
自分も以前、ずるぼんとかJoyfulNoteとか試したけどダメでした。
0299nobodyさん
02/10/13 01:43ID:???何%ダウンロードしました というメッセージがリアルタイムで表示されますよね。
あれの仕組みはちょっと知らないんですが、それと同じようなことをCGIでやる事可能ですか?
なんかJAVAとかじゃないと出来ないんでしょうか。
0302nobodyさん
02/10/13 18:49ID:???0303nobodyさん
02/10/13 23:02ID:sWhCrFb+知るにはどうしたらよいのでしょう?
普通にstatしてもだめっぽいんですが。
0305303
02/10/13 23:12ID:sWhCrFb+0307303
02/10/13 23:57ID:sWhCrFb+0310nobodyさん
02/10/14 00:58ID:???0311303
02/10/14 00:59ID:???相手がcgiだとContent-Length を返してくれないっぽいでつ!
まーそりゃそーかという気もしますが‥‥
なんとかしてcgi相手でもサイズの取得できませんかねー?
最悪、読み込んだ後にバイト数を確認できればいいか
という気分になってきてます。
↑でもこれも計算の仕方がわからなかったりして‥‥。
read ( R, $Html, ( -s "$SrcFileName" ) );
として読み込んだとき、$Htmlの大きさを知るには?
0312303
02/10/14 10:37ID:???( -s "$SrcFileName" ) は0だった。←なぜこれでreadが動くのか?
readの戻り値も0だった。
読み込みバイト数を確認する手段なし。
0313nobodyさん
02/10/14 12:32ID:iqUjhfG60314今日入門。
02/10/14 14:34ID:nFNyLUz3ttp://www.kent-web.com/bbs/joyful.html?
これを
ttp://tok2.com/
で借りた場所にアップしたいのですが
書いてあるとおりにやっても上手く出来ませんでした。
もう少し頑張ってみるつもりですが
初心者にやりがちな間違い等有ればおしえていただけませんでしょうか?
本当におねがいします。
0315nobodyさん
02/10/14 15:55ID:???何でアップしたんだ。FTPソフトの名前。
どううまく行かなかったんだ。サーバにファイルが転送されない?
「書いてあるとおり」なんて、聞いてる相手にいちいち調べさせんな。
0316今日入門。
02/10/14 16:14ID:nFNyLUz3申し訳有りません。
ソフトはマカーなのでFetchです。
全部あげる事はできたのですが
■■■ 500 Internal Server Error ■■■
が出てしまいます。パーミッションは
ttp://www.kent-web.com/bbs/joyful.html?
の通りに設定したのですが・・・
0317nobodyさん
02/10/14 16:27ID:???アップできたけどそのCGIが動いてないんじゃん。
500ってのはそういうこと。400エラーはファイルがない。
で、また、調べさせようとしてるな。やだよ。
パーミッションはOK,ディレクトリもOKってことね。
それなら、perlの置き場所が違ってる可能性高いね。
1行目の#!/usr/bin/perlとかってとこ、サーバの
perlの場所にあわせた?
合わせてたら、今度はスクリプト自体がエラー出さないか、
自分のPCで実行してみることだ。
0318今日入門。
02/10/14 16:44ID:nFNyLUz3あぁ〜。また調べさせるようなことを書いてしまいました。
スイマセン!!
えと、多分、パーミッションというのも設定しましたし、
ディレクトリもつくりました。
perlというのもトクトクというレンタルサーバーで
書いてあったものを使ったので大丈夫だと思います。
>自分のPCで実行してみることだ。
とありますが、コレを確認するのはどうすればいいのでしょうか?
ホントになにからなにまでスイマセン。
0319nobodyさん
02/10/14 17:15ID:/8eacoxJperlとapacheを自分のPCにインストールする。;
apacheのhttp.confを変更する(ここらへんは本見るかググル);
c:/apache/apache/htdocs/xxx.cgiにcgiを置く;
apacheを起動する。;
ブラウザにhttp://127.0.0.1/xxx.cgiと入力する。;
いろいろテストしてみる。;
これでOKかな?(自信ないけど・・・・);
本買うのが一番早いような気がするが・・;
0320nobodyさん
02/10/14 17:27ID:???嘆かわしいことです。
0321nobodyさん
02/10/14 17:51ID:???>>319さんが書いてくれた様にするのが一番いいけど、
マカーならアイコンダブルクリックでCGIファイルを(.plにしとく?)
実行するだけでいいよ。エラーが出なければ、大丈夫ってこと。
(大体ね。)
0322nobodyさん
02/10/14 23:33ID:???くせに、今回はずいぶんと優しいな
少なくともオレの方が腰は低かったぞ
まあ自己解決したからいいけど
0324nobodyさん
02/10/15 00:29ID:???丁寧に答えてたヤシですが、今日は、機嫌がよかったので、書きコが
進んじゃいました。この前は、「こんなCGI探してます」スレで、
javascript書いてあげちゃったりして、「優しいね」って言われました。
それで、約半月あそこで質問のある度にググッて要望に沿いそうなCGI
探してあげてました。もう、あのスレ見てません。このスレは、明日
あたりから見なくなると思います。ごめんなさい、さようなら。
0325nobodyさん
02/10/16 16:26ID:suS2LYMZApacheをnobody権限で動かしているけどWeb上からサーバーの
システム時間変更したり出来ないのかな?
皆さんどのような方法使ってますか?
僕がやってみた事は以下ですが、全部失敗しました。
・SSIで cmd="/bin/date -s 'hogehoge'" を投げてみた
・php のexecコマンドで date -s コマンド投げてみた
・上の2つを sudo インストールしてnobody 権限許可して
同じようにコマンド投げてみた
どれも失敗。皆さんどうやってるの?それとも日時をWebで変更する事
自体がタブーなの?
0326nobodyさん
02/10/16 16:52ID:???0327nobodyさん
02/10/16 17:02ID:???0328nobodyさん
02/10/16 17:15ID:suS2LYMZ>なんでWebからシステム時間の変更しないといけないの?
コマンドから出来るものはおおよそWeb上からやりたいと
思わないかい?
可能ならfdformatとか、e2fsckまでWeb上から操作したいと思うよ。
WebminとかHDEと同じになってくるだろうけど。
実際には客のニーズとしてWebしか触れないのでtelnetでコマンド打ち込む
なんて出来ないってのが当面の問題です。
>>327
User root
Group root
に設定したらApache起動できないよ。
しかも、Apache起動してたら2つめ起動なんて出来ないとおもったけど、
どうよ?
0329nobodyさん
02/10/16 17:18ID:???0330nobodyさん
02/10/16 17:19ID:???> しかも、Apache起動してたら2つめ起動なんて出来ないとおもったけど
出来る。
0331nobodyさん
02/10/16 17:27ID:suS2LYMZ言いたい事は解る。
でも、時間修正くらいでいちいち客先いってられるかヨ。
2個めのApache起動普通には出来ないよね?
apachectl start したら already running って叱られるけど。
0332nobodyさん
02/10/16 17:46ID:???apacheを2つ起動する方法も知らないヤシが人の鯖管理してるのか ガクガク(((;゚Д゚)))ブルブル
つーか, そんなに面倒っちぃと思うなら xntpdでも入れてcronで自動で時間修正するようにするべきだと思うが。
0333nobodyさん
02/10/16 17:51ID:suS2LYMZntpって、そりゃインターネットに繋がってるのが前提だな。
ネットには繋がってないのでそれは無理。
#ntpは誰でも一番最初に思い付く罠
0334名無しさん@Meadow
02/10/16 18:47ID:???ネットにつながってない鯖にwebで入るとはこれ如何に。
0335nobodyさん
02/10/16 18:55ID:???そのLAN内のWin機からHTTPでアクセスするって事だろ。
完全に切り離されてるならApacheをrootで動かすなり自前で時計合わせ専用に
デーモン作るなりすれば?
0336nobodyさん
02/10/16 18:57ID:???まぁtelnetがイヤって事はWinかマクだろうけど。
0337nobodyさん
02/10/16 19:05ID:???0338nobodyさん
02/10/16 19:07ID:???したら、メンテするのは一台だけっしょ。
// なんか異常がない限り。
0339nobodyさん
02/10/16 20:55ID:???rootでTelnetログインできるようにしといて
Net::Telnet使うのが簡単
0340nobodyさん
02/10/16 21:51ID:SGIhA+qDNet::Telnetってはじめて聞きまつた。
この手法はなんといいまつか?
0341nobodyさん
02/10/16 21:55ID:???0342ls-l
02/10/17 00:51ID:9AbsxqL1ことまでわかったので、ゲットしたんだけど、インストールがわからない。。。
誰か教えてYO。環境はMacOS 10.2 + Apache1.3 + perl5.6。要はMacOSの標準
構成デス。。
0344nobodyさん
02/10/17 01:53ID:???FORMタグで送信したいデータがあります。 **.html と **.cgi
に分かれてまふ。 それで**.htmlはpostで大体かけたんですが、
**.cgiのformのデータが全然取れませんです。 使ってる鯖の
versionは、パールの 5.00503 でございます
0346nobodyさん
02/10/17 02:44ID:???そうです。 クエリーストリングもエコーしてみたけど、
なんいもナッシングでした。 一応エンコする記述とか
書くと何も表示されなくなっちゃいます。 ローカル環境
は今準備出来ないので、ウェブオンリーのデバグとなって
おり這々の体で作業をしております。
0347>>344
02/10/17 02:54ID:???フォームのデータとしてparamなり呼び出せばいいと
思うんだけど、このHTMLとの繋がりが・・・。
今の所、post get 両方ダメチンです。
一応ENVはしっかり返ってきてます。
0348nobodyさん
02/10/17 02:58ID:???0349>>344
02/10/17 03:16ID:???(標準入力ってこれで合ってるのかな)
うーん、cgi内、どうやって書いたらいいのかなぁ
多分その鯖ってアパチもパールも古くさいので、
海外のいいとこか、もうちょっと環境良いところ
(splitなんか使わなくてもヨサゲなとこ)にでもした
ほうがいいのかなぁと思っておりまする。
0350>>344
02/10/17 03:24ID:???read(STDIN, $query, $ENV{'CONTENT_LENGTH'});
こんな感じでふね。 もう眠くて日本語変すぎてすみません
ちょとやてみまふ
0351>>344 完
02/10/17 08:40ID:???だうもありがとうございますた。
0352nobodyさん
02/10/18 02:42ID:PW8/fPKvフレームページに設置する時って、フレームに対応させる
設定をすると聞きました。
インラインフレームでも、設定は必要ですか?
アドバイスお願いします。
0353nobodyさん
02/10/18 09:41ID:???0355nobodyさん
02/10/18 21:39ID:b7NtTXSNお知恵を拝借でつ。
この板のアクセス規制関連スレを参考にして、
うちのサイトではjpドメイン規制をしているのですが、
(CGI自体は問題無く作動してます)
ヤホーBB経由だと、ホスト名に
jp/JPが返って来ていないという報告がありました。
なので、フレッツとかのブロードバンド経由だと
どういうホスト名が返って来るのかが知りたいのですが、
どんな方法がありますでしょうか。
0356nobodyさん
02/10/18 22:16ID:???0359355
02/10/19 09:28ID:GPqsQtn9>> 358
へい、わかりまいた。THANX!
0360nobodyさん
02/10/19 10:56ID:???↓
http://hogehoge.virtualave.net/test/read.cgi/php/1234567890
こういう風にするのはどうやればいいのですか?
0361360
02/10/19 10:57ID:???0362nobodyさん
02/10/19 13:40ID:???同一人物?
0363nobodyさん
02/10/19 13:46ID:???0364nobodyさん
02/10/19 15:12ID:???0365s
02/10/19 15:13ID:vOOQmkFS0368 ◆hMJAPH9PWA
02/10/19 22:59ID:pkf2Digs0369初訪問
02/10/20 14:03ID:rY09Sh4G0372nobodyさん
02/10/20 14:38ID:???読解力無いヒト
0373! ! !
02/10/20 14:50ID:???私は自分で作ったHPのトップから入ってきて貰いたいので
直接入力からやブックマークからのアクセスを防ぎたいです。
CGIであるディレクトリーのアクセス制限は可能なんですか?
0374・・・で
02/10/20 14:59ID:???宜しくお願いします。
0375nobodyさん
02/10/20 15:33ID:cAtNmd1m.htaccess
0376nobodyさん
02/10/20 15:34ID:???ふつーはねー、CGIのHTTP_REFERRERっていう環境変数を取得して、
そいつが自分のHPのトップだった場合だけ、飛ぶようにしてねー、
それ以外だったら、HPトップのページに飛ぶようにしる。
でもねー、ブラウザによってHTTP_REFERRERを送出しないのも
あるからねー、完全に、やりたいことを実現するのはむずいん
じゃないか?
0377373、374
02/10/20 15:43ID:???という事は可能なブラウザは制限されるけど
決してできなくもないという事なんですか?
色んなHPを暫く回ってきて、ここに戻ってきて
クッキーを使ってだったらできないのかなと今思ったんですよ。
どうですかねェ? やっぱダメですか?
0378nobodyさん
02/10/20 15:50ID:???376のやり方だとHTTP_REFERRERを出さないブラウザじゃどのページも見れなくなる。
クッキー使うやり方だとクッキーを出さないブラウザじゃどのページも見れなくなる。
それでも良いなら御勝手に。
0379nobodyさん
02/10/20 15:55ID:???376だけど、そいうことはないっしょ。
HTTP_REFERRERが空だったら、HPトップのコピー、またはHPトップへの
リンクを張ったページを出力する。さもなきゃ、そのHPトップからしか
見せないページを出力する。でもさ、これって、アクセスの度にhtmlヘッ
ダーつきで出力するから、頻繁にアクセスされるページには向かないな。
0380nobodyさん
02/10/20 16:06ID:???リファが空>TOPに飛ぶ>どっかに移動しようとする>リファが空>TOPへ
の繰り返しになるだろ。
TOPに飛ばさないならリファ関係無しに全てのページにTOPへの
リンクでも貼っておけば済む話だと思うが。
0381nobodyさん
02/10/20 16:43ID:???>リファが空>TOPに飛ぶ>どっかに移動しようとする>リファが空>TOPへ
>の繰り返しになるだろ。
TOPからは「どっか」へは飛べるんだよ。373はそうしてほしいって言ってるわけ。
「どっか」を直接アドレスバーに入れてアクセスしたり、ブックマーク
して、アクセスされたくないってわけ。(意図はみえみえだけどね。TOPに
収入になる宣伝ページ貼ってあんでしょ。)
だーから、この「どっか」のページをCGIで書いておいて、リファをチェック
するわけ。
0382nobodyさん
02/10/20 17:27ID:???その判断をリファでするって話だろ?
だからリファ吐かないブラウザはどうすんのかって話ししてんだけど。
TOPから来たかどうかをリファでチェックしてる限り
リファ出さないブラウザの場合はどこからどう行こうが
直リンやブックマークと同じ扱いになるだろ。リファ出さないんだから。
0383373、374、377
02/10/20 17:46ID:???>クッキーを出さないブラウザじゃどのページも見れなくなる。
クッキーを履くように設定できないブラウザもあるということですか?
>379さん
>アクセスの度にhtmlヘッダーつきで出力するから、頻繁にアクセスされるページには向かないな。
そんなにアクセスされるところではないので構わないのですが、htmlヘッダー着きで出力とは?
>380さん
>全てのページにTOPへのリンクでも貼っておけば済む話だと思うが。
確かに仰せの通りかもしれませんが、せっかく初めて作ったもんだから、やっぱり・・・ネ。
>381さん
>(意図はみえみえだけどね。TOPに収入になる宣伝ページ貼ってあんでしょ。)
まさか。 ただ、いい事教わりました。こんどどっか別のところでそれについて教えて下さい。
>382さん
>直リンやブックマークと同じ扱いになるだろ。リファ出さないんだから。
それでも何かいい方法はないでしょうか?一応、それでクッキーという考えを持ったんですけど・・・
0384nobodyさん
02/10/20 18:17ID:???それはページだけでいいの?
html以外、例えば画像ファイルの直接参照はクッキーじゃ防げなさそうだけど?
蛇足だが、クッキーやHTTP_REFERERはファイアーウォールソフトでも送出をブロックされてしまう。
やり方はいろいろ有るが欠点のない方法はないよ。
どの程度の厳密さが欲しいか言ってみ?
もっとも、漏れ的には気にしない方が幸せだと思うけどね。
画像直リンとかはともかく、途中のページにでも来てくれるならそれでいいじゃんか。
0385nobodyさん
02/10/20 18:35ID:RVEI8NIXこれ→http://rpg-center.net/bbs/dsfbbs/yybbs.cgi
http://cuo.press.ne.jp/cgi/b07_1.html
この方法は通用しませんでした。
0387nobodyさん
02/10/20 19:05ID:???0389nobodyさん
02/10/20 19:21ID:81/wEKr7まともに教えないのならこういうスレ立てるなっつーの
0390nobodyさん
02/10/20 19:28ID:???だから、スクリプトは簡単なんだが、その時刻にスクリプトが動いてないとダメだろ?
cron使える環境じゃないとまず無理だよ?
0392nobodyさん
02/10/20 20:11ID:???cron設定できるくらいの人間なら自分で書けそうなもんだが、
そんなレベルではスクリプト言語指定した方がよくないかな?
使えん処理系だったらどうするの?
0393373、374、377、383
02/10/20 21:07ID:z9FOCLAsJPGファイルとGIFファイルは多少ある程度で画像は大してないです。
殆どがHTMLファイルですね。だから、可能ならできるだけ厳密な物が
好いのは言うまでもありませんが、多少は仕方がないのかなと思い始めています。
0394nobodyさん
02/10/21 01:55ID:???何か分からん人やな。こいうこと言ってるんだけど。
#!/usr/bin/perl
if ($ENV{'HTTP_REFERER'} eq "http://www.hoge.net/hoge.html") {
print "Content-type: text/html\n\n";
print <<EOF;
...(ここがTOPからのみアクセスさせたいページの内容)
...(〃)
EOF
} else {
print "Content-type: text/html\n\n";
print "<html><META HTTP-EQUIV='Content-Type' CONTENT='text/html; CHARSET=Shift_Jis'><body>以下のTOPページから入ってください。<a href=\"http://www.hoge.net/hoge.html\"></a></body></html>\n";
}
0395nobodyさん
02/10/21 09:14ID:rhS7DxCr382じゃないけどさ、REFERER返さないブラウザでアクセスすると
if ($ENV{'HTTP_REFERER'} eq "http://www.hoge.net/hoge.html")
このifの条件は絶対に真にならないよ。
hoge.htmlのリンクから来たとしてもHTTP_REFERERは空だもん。
0396nobodyさん
02/10/21 12:06ID:kvV//eq/↑ネタ ↓
└──┘
スレに優しい
ネタリサイクル
■ このスレッドは過去ログ倉庫に格納されています