アップローダースレ Part2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/05/06 16:27ID:FUTlm/lL[画像掲示板]
JoyfulNote (Perl) KentWeb
ttp://kent-web.com/bbs/joyful.html
有名?なKentWebの画像板。
サーバ依存だがサムネイル対応版には
ttp://script.s16.xrea.com/index3.php (鏡の国) や
ttp://sugachan.dip.jp/download/joyful.php (菅処) などがある。
PHPJoyfulNote (PHP) 鏡の国
ttp://script.s16.xrea.com/index2.php
上記のJoyfulNoteのPHP移植版。サムネイル機能が追加されている。
PHPで動作するのでPerl版よりレスポンスがよい。
画像BBS (PHP) レッツPHP!
ttp://php.s3.to/bbs/bbs3.php
PHPで書かれてソース的にもシンプルなので動作も軽め。
futaba.php (PHP) ふたばちゃんねる
ttp://www.2chan.net/script/
上記のレッツPHPの改造版。
多大なアクセスに耐えるため
htmlキャッシュやサムネイル機能が追加されている。
ファイルアップローダー (PHP) updir.net
ttp://updir.net/
複数のテンプレートが使用でき
見栄えを簡単に変える事ができる。
imgboard: (Perl)
('A`)
0478467
05/01/28 01:31:17ID:???スマン、RSSはちょっとわからないから後回しで。後で優先して盛り込む。
カテゴリとタグに関連したRSS吐くようにしたら便利か?
0479nobodyさん
05/01/28 02:09:45ID:???まぁ確かに便利だが、
RSS をジャンル指定したいぐらいたくさんファイルがうpされるかを考えると実用性は薄いな。
ただ、こけおどしにはなるのである分にはOKだと思う。
とりあえず全体の RSS は欲しい。
0480nobodyさん
05/01/28 21:25:41ID:???こんな流れでヨロ
0481nobodyさん
05/01/29 01:21:27ID:h4A5TKkR0482nobodyさん
05/01/31 03:00:20ID:???0484nobodyさん
05/01/31 21:57:52ID:???だってRSSにしたらホントにただ落とすだけのろだになっちゃう。
そんなの管理人としてつまんないよ。
0486nobodyさん
05/02/01 23:55:55ID:RWJDI3Gq0487nobodyさん
05/02/05 15:22:40ID:???0488467
05/02/06 10:16:42ID:???・ログ管理機能としてカテゴリ・月別に保存フォルダを指定でき、過去ログなどを作成できる。
・一般利用者は投稿・削除が出来る。
・管理者は管理画面より、投稿・削除に加えて、内容修正(文字部分)・一覧画面編集ができる。
・出力は投稿・削除がある度にHTML出力(静的生成)。
2月中にはテスト公開して改良に望みたいと思う。
今後の追加予定機能
・タグ機能
・RSS出力
0489nobodyさん
05/02/06 23:13:43ID:???0490nobodyさん
05/02/07 04:09:08ID:???0491nobodyさん
05/02/07 16:53:09ID:???0493nobodyさん
05/02/07 21:25:54ID:???厨房が現れるともう終わり。
0494nobodyさん
05/02/07 21:27:14ID:???ファイル名が怪しいものも即削除。
0498nobodyさん
05/02/08 11:33:10ID:???実際、規約といっても言い訳のネタになるぐらいかなぁ。
そいでも規約も決めずにうpロダやってるやつはアホなのだろうな
0499nobodyさん
05/02/08 13:35:02ID:???0500nobodyさん
05/02/08 13:53:06ID:???ApacheならApacheLogViewer(http://home.ns01.info/circle/)など
0501nobodyさん
05/02/12 14:40:30ID:???0502nobodyさん
05/02/12 22:45:25ID:???同意。今使ってるPHPを書くときに参考になった。
「あれ、あーいうことはどうすればいいんだ?」ってときに、
役にたちますた。
0503nobodyさん
05/02/17 11:58:39ID:???以下のような機能を考えているのですが、ご意見頂けないでしょうか。
基本機能(従来のものを踏襲)
・トップページは、ファイルがアップロードされる度HTMLを生成する
・アップロード可能な拡張子を設定
・アップロードファイルに削除用パスワードが設定でき、投稿者は削除可能
・画像一覧参照画面←GDで作成されたサムネイル画像が表示される
・アップロード可能なファイルサイズの指定
・管理画面にてアップロードされたファイルの削除が可能
新機能案
・投稿時にパスワードを設定でき、パスワードを知っている者のみダウンロード可能
・ファイルダウンロードをPHP経由で行い、ダウンロード数を取得し表示
・管理画面でファイルを削除時に、削除ファイル投稿者のドメインからの再投稿を一定時間禁止
・タグ機能(検討中)
0504nobodyさん
05/02/17 12:35:15ID:???0505503
05/02/17 13:02:56ID:???2ページ目以降は閲覧時にCGIで生成という方法を考えています。
0506nobodyさん
05/02/17 13:28:53ID:???0508nobodyさん
05/02/17 13:49:54ID:???>・投稿時にパスワードを設定でき、パスワードを知っている者のみダウンロード可能
>・ファイルダウンロードをPHP経由で行い、ダウンロード数を取得し表示
これ、ファイルにリダイレクトじゃなくて、PHPにファイル転送させるってこと?
こういうのって負荷とかメモリとか食うんじゃないの?
0509503
05/02/17 14:13:43ID:???すみません、PHPで作ると書いているのでPHPでよかったですね。
> 508
PHPを経由してHTTPのヘッダーを吐くので、PHPの負荷は心配しなくていいと思います。
(↑違ったらすみません。)
0510nobodyさん
05/02/17 16:11:47ID:???ちょっと質問。
>・投稿時にパスワードを設定でき、パスワードを知っている者のみダウンロード可能
新機能案のこれさ、もうやってる所多くて別に新しくも何ともないと思われ。
基本機能に入れたほうがよさげ。
>・ファイルダウンロードをPHP経由で行い、ダウンロード数を取得し表示
これは簡単に出来るけど、DLPASS機能と併用してやってる所は少ないね。狙い目。
>・管理画面でファイルを削除時に、削除ファイル投稿者のドメインからの再投稿を一定時間禁止
これはプロバイダのproxy(CATV、leonet等)とか規制したら他人に迷惑を被ると思うんだが。
0512503
05/02/17 16:42:47ID:???>>・投稿時にパスワードを設定でき、パスワードを知っている者のみダウンロード可能
> 新機能案のこれさ、もうやってる所多くて別に新しくも何ともないと思われ。
> 基本機能に入れたほうがよさげ。
了解しました。
私が探している限りでは見当たらなかったのですが、メジャーなんですね。
>・ファイルダウンロードをPHP経由で行い、ダウンロード数を取得し表示
これは簡単に出来るけど、DLPASS機能と併用してやってる所は少ないね。狙い目。
ご意見ありがとうございます。
アップロード時にダウンロード数制限等もあるとなおいいのでしょうか。
>・管理画面でファイルを削除時に、削除ファイル投稿者のドメインからの再投稿を一定時間禁止
これはプロバイダのproxy(CATV、leonet等)とか規制したら他人に迷惑を被ると思うんだが。
確かにそうですね。
プロキシ経由の投稿に関してはどうするのかといった問題もありますし。
>>511
少し確かめてみたのですが、問題ないようでした。
一番の問題は回線かもしれません。
0513503
05/02/17 17:31:58ID:???> ・トップページは、ファイルがアップロードされる度HTMLを生成する
> ・ファイルダウンロードをPHP経由で行い、ダウンロード数を取得し表示
ダウンロード数を表示し、最大ダウンロード数を設定できるようにするとすれば
HTMLを生成する方式は使えないですね。
0514nobodyさん
05/02/17 21:12:51ID:???こんなアップローダ作ったんだけど、どう?
0517516
05/02/18 09:12:51ID:???win2k apache1.3.31 activeperl5.8.4 build810 串かましてテストした。
0518nobodyさん
05/02/18 09:19:44ID:???txtはイケた(・∀・)
0519nobodyさん
05/02/18 10:04:22ID:???0520nobodyさん
05/02/18 11:28:29ID:???Windows鯖でテキストモードで保存してる
0521nobodyさん
05/02/18 11:35:56ID:???予想的中
open(OUT, ">$SRC_DIR$fld/$name");
print OUT $form{'up'};
close(OUT);
を
open(OUT, ">$SRC_DIR$fld/$name");
binmode(OUT);
print OUT $form{'up'};
close(OUT);
でいいはず
0523515
05/02/18 12:05:45ID:???binmodeに関しては気づいてたんだけど、Win鯖を前提にしてなかったのでごめん(;´Д`)
で、ダウンロード時にサイズがおかしくなるのは、CGIのタイムアウトが原因?かも。
ファイルへのURLを表示する方法で解決するけど、
これだと直リンされる恐れがあすから・・・。
下記のような修正でURL表示になります。
if($dpass eq $form{'dlpass'}){
# print 'Content-type: application/octet-stream ;name=';
# print "$dname\n";
# print 'Content-Disposition: attachment; filename=';
# print "$dname\n\n";
# $fname = $SRC_DIR.$dfld.'/'.$dname;
# open(IN, $fname);
# while(<IN>){ print $_; }
# close(IN);
# $flg = 1;
&head('');
print "[<a href=\"$fname\">$fname</a>]<br>";
print "<br>";
print '[<a href="'.$BACK_URL.'">戻る</a>]';
0524515
05/02/18 12:12:58ID:???その辺もかなりいい加減な作りになっててすまぬ(;´Д`)
本来であればMIMEで拡張子を決定するべきなんだろうけど、
ちょっと時間に余裕がなかったので、今度修正しときます。
0525nobodyさん
05/02/18 14:55:54ID:???って便利ですか?
0526nobodyさん
05/02/18 16:52:45ID:???このスクリプトの登場でアップローダ界に激震が走った。
今まで多少知識がある奴しかやってなかったDLPASS式だったが。
これからはこくれんもどきが大幅増加だな。
0527nobodyさん
05/02/18 18:33:46ID:???ずるぼんタイプが蔓延し次々サーバーをつぶしていく現状よりよっぽどまし。
つーか、お前マルチポストして何様?作者様ですか?www
0528503
05/02/18 19:37:08ID:???知っている者同士での違法ファイルの置き場となってしまう
危険性があると思うのですが、どうでしょうか。
>>525
あまり意味ないですかね。
ダウンロード数の表示についてはどちらでもいいのですが、
ダウンロード数の制限機能を組み込みたいと考えています。
(例えば一定時間内に○Mを超えるアクセスがあった場合には、1時間凍結とか)
とりあえずはアクセス可能数を制限して、負荷を減らそうと考えています。
他サーバーに転送する手もあるのですが、できれば自サーバー内で完結できるようにしたいです。
あと、ファイルベース・MySQLどちらにも対応したいと考えていますが、これも不要?
ファイルに関しては一定数を超えれば削除するが、ログは残る・・・ようにしたいと思っています。
とりあえずβ版でも作ってみます。
0530503
05/02/18 22:43:02ID:???ダウンローダー対策は難しいですね。
メニュー画面→ダウンロード画面→ダウンロードという流れで、
ダウンロード画面内にランダムな数値を表示し、それを入力しないとダウンロードできない
・・・という流れぐらいしか思いつきません。
何かいいアイデアはないでしょうか。
0531nobodyさん
05/02/19 10:59:07ID:???そんなことしなくてもUser-AgentかRefererで弾けば?
単純に、複数のページでRefererをチェックするという方法なら簡単でしょ
例えば、特定のファイルをダウンロードする場合、ダウンロードページのRefererが必要であり、
また、ダウンロードページを閲覧するにはトップページのRefererを必要とする。
これならhtaccessに何行か書き加えるだけで済むから簡単だと思うけど?
0532nobodyさん
05/02/19 11:22:37ID:???実質ブラウザでなければダウンロードできなくなる。
0533nobodyさん
05/02/19 12:49:26ID:???User-Agentなんて大概のダウンローダーが偽装してるし、
Refererで弾くとノートン先生使ってる奴も弾くことになる。
0534nobodyさん
05/02/19 13:04:31ID:???0535nobodyさん
05/02/19 13:09:30ID:???0536515
05/02/19 14:55:54ID:???それなら簡単にできますよ。
<a href="dl.cgi/src/up_002.zip">002</a>
<a href="dl.cgi/src/up_001.zip">001</a>
<a href="dl.cgi/src/up_999.zip">dummy</a>
こんな感じの一覧があったとしたら、
dummyを落そうとした瞬間に.htaccessに放り込めばいい。
でも、これだとブラウザからも弄れるので、dummyは
スタイルシート等で表示上は見えなくすればいい。
要は間にスクリプトを噛ませばOK。
フォルダ名も実際はsrc/t43t34/up_002.zip等のように暗号化すれば完璧。
0537536
05/02/19 14:57:17ID:???0538503
05/02/19 22:39:16ID:???昔のIriaなんかは、User-Agentもリファラーも偽装できたように思います。
最近のはどうなのでしょうか。
>>514
すみません、勉強不足なのですが
> dummyを落そうとした瞬間に.htaccessに放り込めばいい。
というのはどういう事でしょうか。
dummyにアクセスがあったら、.htaccessでそのIPを拒否してしまうという事でしょうか。
とりあえずは、User-Agentとリファラの併用+ファイル名をランダムにする事で
ダウンローダー対策を行って見ます。
0540nobodyさん
05/02/20 23:09:36ID:???0541nobodyさん
05/02/20 23:15:25ID:???要するに、偽装には偽装で対抗しましょうということで
PHPならfsockopen()と.htaccessを使って、特定のファイルをダウンロードする時に、
fwrite($fp, "PHP User-Agent Checker/1.0a (ja-JP; http://www.sample.com/index.php)\r\n");
などと、非常に分かり辛いUser-Agent情報を送信する。
そのUser-Agentのみ許可、ダウンロードできるという仕組み
簡単にいえば、User-Agentを用いた認証みたいなの
0543nobodyさん
05/02/21 01:38:16ID:???0545nobodyさん
05/02/23 09:40:39ID:k3MSyP+t0546nobodyさん
05/02/23 21:03:49ID:fxlgiWhr場所教えていただけるとありがたいんですが・・・。
0549nobodyさん
05/03/07 17:33:23ID:???もういいです。
0550nobodyさん
05/03/08 05:27:56ID:???0551名無しさん@お腹いっぱい。
05/03/12 22:26:52ID:???0552nobodyさん
05/03/13 12:56:23ID:???0553nobodyさん
05/03/16 03:31:00ID:sLnTjXC/0554nobodyさん
05/03/16 07:02:26ID:???0555nobodyさん
05/03/18 00:16:12ID:???・一人でうpする
・頻繁にうpする
BlogとかCMSみたいなもんなんだが、それほどでなくていいのよ。
かといってシコシコ揚げてリンク貼ったりするのも面倒ですのよ。
イメージは野菜の無人販売所。
0556nobodyさん
05/03/18 07:49:49ID:???0557nobodyさん
05/03/18 08:24:27ID:???0558nobodyさん
2005/03/21(月) 13:34:10ID:???まだいろいろと不完全ですが,一応動作はします.
ttp://acapulco.dyndns.org/hiki/hiki.cgi?%28Apache%29mod_uploader
コンパイルは, ./configure && cd src && make
インストールは,conf/httpd.conf とかみて適当に.
速度を求めたいかたは,./configure の代わりに
CC=icc ./configure --with-march=pentium4
とすると良いかも.
(でも現状では icc 使うとバグがでて,アップロード動作で abort します...)
0559558
2005/03/21(月) 13:47:43ID:???というのは嘘でした.
まだおいきれてませんが,比較的小さいテキストファイルをアップロードすると abort します.
いずれにしろ,バギーなのは変わりないので,
/usr/sbin/apache2 -X -f /home/foo/bar/mod_uploader/conf/httpd.conf
のようにして,アップローダ専用の Apache を立ち上げた方がよいです.
0560nobodyさん
2005/03/21(月) 20:19:58ID:bUrIb3Is0561558
2005/04/01(金) 00:00:23ID:???バグとれました.PHP 版アップローダよりも更に高速&低負荷なものが欲しい方はどうぞ.
0562nobodyさん
2005/04/04(月) 04:38:53ID:???0564558
2005/04/08(金) 20:19:48ID:???はい.
0565nobodyさん
2005/04/10(日) 07:02:42ID:???http://pc8.2ch.net/test/read.cgi/mysv/1101283470/593
これ?>検証
0566558
2005/04/10(日) 15:36:17ID:???何が聞きたいの?
0567nobodyさん
2005/04/11(月) 22:04:31ID:???特定のディレクトリ以下を操作できるスクリプトを書いてるので、
その部品につかえたらうれしいな、と。
pear.php.net で file とか dir で検索したけど、
いまいちそれっぽいのは見つからず...
0568566
2005/04/11(月) 22:30:12ID:???タブ間違えて誤爆した。
0569nobodyさん
2005/04/14(木) 23:48:23ID:L/7L45Hc拡張子判別のソースを見て見ましたがよくわかりません・・・
全てでなくとも、とある独自のファイル形式のものをアップロードできれば良いのですが
0570無責任野郎
2005/04/15(金) 07:28:49ID:???> とある独自のファイル形式のものをアップロードできれば良い
># アップロードを許可するファイル形式
の最後にでも
$AAA = 1; # うんたらかんたら
※ AAAが許可したいファイル形式
を追加して、
> ・
> ・
> ・
> if ($fname =~ /\.rm$/i && $rm) { $tail=".rm"; $flag=1; }
> if ($fname =~ /\.mpe?g$/i && $mpeg) { $tail=".mpg"; $flag=1; }
> if ($fname =~ /\.mp3$/i && $mp3) { $tail=".mp3"; $flag=1; }
> ***
>}
みたいになってる行の***の部分にでも
if ($fname =~ /\.AAA$/i && $AAA) { $tail=".AAA"; $flag=1; }
※ AAAが許可したいファイル形式
を追加すればおkだと思うけど未確認。
># ファイル形式を認識
>$flag=0;
$flag=1; にしちゃえばどんなファイル名だろうとageられる気がするけど、何が起こっても知らにゃい。
0571nobodyさん
2005/04/15(金) 07:36:11ID:???$flag=1; だけじゃだめぽいね。
$fnameから拡張子の部分を切り取って、$tailに入れるようにしないとだめぽい。
これで
> 全ての種類のファイルをアップロードできるように
なる・・・・・と思う。
0572nobodyさん
2005/04/15(金) 18:32:08ID:M0pKVd4jif ($fname =~ /\.AAA$/i && $AAA) { $tail=".AAA"; $flag=1; }
に新しい拡張子を入力して試してみましたが、やはり弾かれます。
まず、拡張子関係なくファイルの認識をしているようなソース(下)があるので、それにひっかかってるぽいのですが
これをどう編集すればいいのやらさっぱりです。
if ($tail =~ /image\/gif/i && $gif) { $tail=".gif"; $flag=1; }
if ($tail =~ /image\/p?jpeg/i && $jpeg) { $tail=".jpg"; $flag=1; }
if ($tail =~ /image\/x-png/i && $png) { $tail=".png"; $flag=1; }
・
・
・
後これについては$tailに入れるというのがどうすれば良いかよくわからなかったので試せませんでした。
>$fnameから拡張子の部分を切り取って、$tailに入れるようにしないとだめぽい。
0573nobodyさん
2005/04/16(土) 01:23:57ID:???$flag = 1;$fname =~ /(\.\w+?)$/i;$tail = $1;
0574nobodyさん
2005/04/16(土) 01:53:12ID:Skj0EYgoありがとうございます。文の意味はさっぱりわかりませんが出来ました。
多謝
0575nobodyさん
2005/04/28(木) 14:04:25ID:???0576nobodyさん
2005/05/07(土) 15:32:41ID:sghqF53V0577nobodyさん
2005/05/07(土) 15:51:03ID:U7wdq9wcうぇwwwうはっwwwおkwwwおkwwwっうぇw
wwwおkwww
っwwwwwwwwwwうはっwww
wwwwwwっっうぇうはっwwwおkwwwうはっwww
■ このスレッドは過去ログ倉庫に格納されています