Proxomitron フィルタ ..
554:名無しさん@お腹いっぱい。
07/03/16 09:13:53 +6j5jdaH0
いや、日本語としては「仕様」で間違ってないと思うけど。
>>552と>>553がどういうニュアンスで捉えているか知らんが。
555:名無しさん@お腹いっぱい。
07/03/16 10:31:21 9J0GOQta0
まさに、仕様。
556:名無しさん@お腹いっぱい。
07/03/16 14:29:20 Lin+siRH0
仕様であってると思うよ。 これが至極当たり前の挙動と思ってるほうがおかしい。
検索アルゴリズムにはいろいろあるがオミトロンのこの方式はその中の1つでしかない。
557:名無しさん@お腹いっぱい。
07/03/16 14:30:04 8/GkMkD20
まぁ確かに
0 < 1 と評価するのはProxomitronの仕様なのね
みたいなこと言われたら
日本語として見ても主張の内容として見ても100%正しいけど
なんか妙だなって違和感は覚える
どちらの言いたいことも分かるが
558:think ◆MM0nnAOCiQ
07/03/16 18:53:48 Hi6v4zHb0
>>552
「現在のProxomitronの動作」と「>552氏が求めるProxomitronの動作」をまとめると以下のようになると思います。
---- 現在のProxomitronの動作 (以降、「動作A」とする)
1. ファイルの先頭の1バイト目から読み込み、優先度の高いフィルタから順番にテスト
2. 1バイト進み、優先度の高いフィルタから順番にテスト
3. 「3. の動作」をファイルの末尾([EOF])まで続ける
---- 「フィルタの優先度」を最優先した場合のProxomitronの動作 (以降、「動作B」とする)
1. ファイルの先頭の1バイト目から読み込み、「優先度の最も高いフィルタ」をテスト
2. 1バイト進み、「優先度の最も高いフィルタ」をテスト
3. 「2. の動作」をファイルの末尾([EOF])まで続ける
4. ファイルの先頭の1バイト目から読み込み、「前回テストしたフィルタの次に優先度の高いフィルタ」をテスト
5. 1バイト進み、「4. でテストしたフィルタ」をテスト
6. 「4. 〜 5. の動作」をファイルの末尾([EOF])まで続ける
ここで、フィルタテストに必要とするバイト数に注目してみてください。
動作A … 「フィルタテストするバイト数 = 読み込んだファイルのサイズ」
動作B … 「フィルタテストするバイト数 = 読み込んだファイルのサイズ×フィルタの数」
このことから、「動作B」はフィルタの数が多ければ多いほど、Proxomitronの動作が顕著に重くなるでしょう。
「動作A」でもフィルタの数が多いほど、Proxomitronの動作が重くなりますが、フィルタテストするバイト数はファイルサイズ分だけに留まるため、「動作A」の負荷は「動作B」程には大きくならないと想像できます。
日本語としては私も「仕様」であっていると思いますが、上のところの内部事情を知っているか否かで見方が変わってきます。
特に、「フィルタの優先度」という表現は、如何にも「最優先されそうな設定」ですから、勘違いがあっても致し方ない気がします。
# 余談ですが、2chブラウザ「JaneDoe View」の ReplaceStr.txt は「動作B」に近い動作になっていると思われます。
559:名無しさん@お腹いっぱい。
07/03/16 20:42:00 HCDQ1kIb0
Jane板見たけど、結構大変そうなことやるつもりみたいだねぇ。
ガンガレ。
560:名無しさん@お腹いっぱい。
07/03/16 21:13:39 Lin+siRH0
JaneViewのReplaceStr.txtをオミトロン方式にしたら早くなるのではとViewスレに書き込んだら
複数の人に否定されたことがある。 何故なのか未だに分からない。
561:名無しさん@お腹いっぱい。
07/03/16 22:31:20 1wcXUPwP0
>558
ややっ、詳しい解説ありがとうございます。
そういう事情があると極めて妥当な動作ですね。
今後は、優先度を高くしたいフィルタは
ほかのフィルタと競合しても問題ないように努力します。
562:名無しさん@お腹いっぱい。
07/03/17 03:30:08 AadC9Up90
TOK2のWebスペースの広告が激しくUzeeeee!!
消すこと自体は簡単なんだが、
こちらが対応した数日〜1週間後に10〜数百バイトくらいずつ増やして、
バイト制限を潜り抜けてきやがる。
このまま増やし続ける気か(#゚Д゚)ゴラァ!
563:名無しさん@お腹いっぱい。
07/03/17 05:21:53 RWq7G/0N0
>562
自分の場合、limit は16384(16KB)になってる。
1回につき最低でも512バイト、最大で2KBくらい増やして、
いったい何回 limit を増やしたことか。
564:名無しさん@お腹いっぱい。
07/03/17 05:26:11 RWq7G/0N0
いま思いついたけど、
<!-- tok2_top --> → <div class="tok2-ad">
<!-- tok2_top_end --> → </div>
こんな感じで置き換えて、
div.tok2-ad { display: none !important }
こうすれば消える。
バイト制限を増やす必要がなさそうだし、動作も軽くなるかも。
565:名無しさん@お腹いっぱい。
07/03/17 11:02:34 HIHHgHWL0
>>560
あまり知らずに言ってるんじゃない?
手間と見返りを考えるとその価値があるかは別として、確かに悪くはなさそうな気はする。
566:560
07/03/17 12:29:59 MSvIFEtK0
>>565
どうなんでしょうね、検索アルゴリズムに詳しそうなレスを書く人ではありましたが
本当に詳しい人だったのか私には分かりませんでした。
567:名無しさん@お腹いっぱい。
07/03/17 13:22:55 AadC9Up90
>>563
自分は現在13160っす。
>>564
ユーザスタイルシートはキャッシュするからなぁ。
ソース見たときすっきりせんし。
568:名無しさん@お腹いっぱい。
07/03/17 18:08:19 MjkjkU7H0
BFilter
URLリンク(bfilter.sourceforge.net)
新顔ウェブフィルタープロクシらしい
569:名無しさん@お腹いっぱい。
07/03/17 18:37:53 jVQSctLy0
>>564 >>567
<noembed><nolayer><comment>で囲めばキャッシュしないはず。
570:名無しさん@お腹いっぱい。
07/03/18 07:59:30 s5Pb2Uih0
>>562
トクトクの人気ランキングに出てるサイトいくつか見たけど、そんなに広告だらけって感じでもなかったけど……
571:名無しさん@お腹いっぱい。
07/03/18 11:52:02 x92h/snR0
>>570
無料の方だよ。
人気ランキング上位は有料が多い気がする。
572:名無しさん@お腹いっぱい。
07/03/18 16:33:15 4oJ5D+yI0
URLリンク(www.1rk.net)
このサイトの広告を消すフィルターを作って頂けないでしょうか。
お願いします。
573:名無しさん@お腹いっぱい。
07/03/18 19:50:17 UeHdvFS20
URLの最後が.jpgで終わっててContent-Type: がimage/jpegで、中身が普通のhtmlになってると
WEBページフィルタ適応されないんですが対処方法ありませんか?
574:名無しさん@お腹いっぱい。
07/03/18 21:08:43 YcHYPNb90
>>562
とりあえず作ってみた。
広告部分にidが振ってあったのでCSSで消したよ。
Name = "TOK2"
Active = TRUE
URL = "[^/]++.tok2.com/$TYPE(htm)"
Limit = 120
Match = "(<script * </script> && *(prego.jp)*)"
"|</head>$SET(#=<style>\n<!--\n"
"#TOK2-TOP-BANNER, #TOK2-SIDE-BANNER, #TOK2-SEO { display: none; }\n"
"-->\n</style>\n</head>\n)"
Replace = "\@"
575:名無しさん@お腹いっぱい。
07/03/18 21:09:27 YcHYPNb90
>>572
Name = "1rk"
Active = TRUE
URL = "www.1rk.net/$TYPE(htm)"
Limit = 80
Match = "(<img *> && *(image.jpg)*)"
"|</head>$SET(#=<style>\n<!--\n"
".ad, p.ads, p.adw { display: none; }\n-->\n</style>\n</head>)"
Replace = "\@"
576:名無しさん@お腹いっぱい。
07/03/18 21:35:26 qf1arYv00
イメージファイルの中にアドビのタグ?が入っていると
誤爆するのを防ぐにはどうしたらよいですか
577:名無しさん@お腹いっぱい。
07/03/18 21:56:22 WywTxmu/0
>>573
Content-Type: をimage/jpegからtext/htmlに置換するフィルタで対処。
URL欄を使ってフィルタが動作するサイトを絞ってから使うといいよ。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: image to html (In)"
URL = "www.hoge.com/"
Match = "image/jpeg"
Replace = "text/html"
>>576
画像ファイルはデフォルトではフィルタリング対象外のはず。
その画像を見れば対策方法が分かるかも。
578:ROMラー
07/03/18 23:52:16 WywTxmu/0
>>506
これで期待通りに動くようです。
# NoAddURL
(#?+)\9$URL(\8)$SET(ABS=\8\9)
./(?+)\9($TST(SWITCH1=1)$SET(ABS=$GET(CURRENTURL)\9)|
$URL(([^:]+://*/([^/]+/)+)\8)$SET(CURRENTURL=\8)$SET(SWITCH1=1)$SET(ABS=\8\9))
/(?+)\9$URL(([^:]+://*/)\8)$SET(ABS=\8\9)
../($TST(SWITCH2=1)$SET(NUM=$GET(LEVEL))|$URL([^:]+://*/$SET(NUM=1)
([^/]+/$LST(increment))+)$SET(SWITCH2=1)$SET(LEVEL=$GET(NUM)))
($LST(decrement)../)+$URL(([^:]+://*/([^/]+/$LST(decrement)
$TST(NUM=[^0]*))+)\8)(?+)\9$SET(ABS=\8\9)
([a-z]+:?+)\9$SET(ABS=\9)
(?+)\9$URL(([^:]+://*/([^/]+/)+)\8)$SET(ABS=\8\9)
579:名無しさん@お腹いっぱい。
07/03/19 00:42:49 tQMpuigO0
>>575
遅くなりましたが、ありがとうございます。
580:名無しさん@お腹いっぱい。
07/03/19 00:45:50 NXCUdEyC0
本スレが不毛な言い争いの場に…
DOCTYPE宣言があればそのまま、無ければ付加ってフィルタを作ろうと思ったのに
前者が実現できなくて問答無用に付加されてしまう
有効リストなり無効リストなりを作ってマッチさせる手もあるけど
それじゃ汎用性が落ちるからなぁ
581:ROMラー
07/03/19 00:48:14 7ZzHzeuq0
>>506
$GET(ABS)と\8\9が一致しない原因は以下のフィルターを試せば分かります。
テストウインドウに"abc"と書いて下の3つのフィルターを試して下さい。
Name = "$SET test1"
Active = FALSE
Limit = 256
Match = "*"
Replace = "<match>"
Name = "$SET test2"
Active = FALSE
Limit = 256
Match = "*$SET(\0=text)"
Replace = "<match>"
Name = "$SET test3"
Active = FALSE
Limit = 256
Match = "?+$SET(\0=text)"
Replace = "<match>"
1と2の違いは$SET(\0=text)が付いてるかどうかの違いしかありませんが結果が
変わっていると思います。 3では2で起きた問題を修正するために*を?+に書き換えています。
582:ROMラー
07/03/19 01:09:43 7ZzHzeuq0
>>506
何故こうなるかというと、*は後ろに何かがあれば最短一致として動作、無ければ
最長一致として動作するためです。 *の後ろに$SETコマンドがあると*は最短一致として
動作するようになってしまうので2のようにカラにマッチしてしまうわけです。
そこで後ろに何があっても最長一致をする?+を使うことでこの問題を回避しています。
>>580
こんな感じですかね。
Active = FALSE
Limit = 256
Match = "("
"(^(^ <!DOCTYPE))"
"|"
"$SET(0=<!DOCTYPE ....)"
")"
"$STOP()"
Replace = "\0"
583:580
07/03/19 06:43:35 NXCUdEyC0
>>582
お、これはありがとうごぜぇやす
ブックマークから適当に踏んで試してみたらXML宣言ありなページで誤爆したんで
回避する為に”(^(^ *<;!DOCTYPE))”に変えてしばらく使ってみるっす
そこでSTOPかけるのを思い付かんかったのと
宣言文に続く<HTML〜まで見るようにしてたのが敗因か
584:名無しさん@お腹いっぱい。
07/03/19 18:06:50 WHlPa9sf0
>>577
ども
URL: Filter image extension をブラクラ用にオンにしてます
ログに Protect Contents except HTML が出てます
URLリンク(www.mxtv.co.jp) ここの画像がそうなります
585:名無しさん@お腹いっぱい。
07/03/20 16:44:20 0LIwAOV50
Amazonの長ったらしいURLを短くするフィルターありませんか?
こんな感じで
URLリンク(rag2ch.s151.xrea.com)
586:ROMラー
07/03/20 17:30:14 PPne+SNt0
>>584
Protect Contents except HTMLというフィルタが誤爆しているようなので
このフィルターを修正するしかないですが、ログを検索してみてもこのフィルターを
配布しているところが見つかりません。
よろしければここに貼るか、うpして頂けないでしょうか。
問題が起こるところがそのサイトだけならば (^([^/]++.|)mxtv.co.jp/) をそのフィルターの
URL欄の先頭に入れれば回避出来ますが、根本的な解決にはなりません。
587:名無しさん@お腹いっぱい。
07/03/20 20:49:41 PJkWD4Ws0
>>585
ヘボくてすんません、おかしかったら誰か直してやってください
勉強させていただきやす。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Amazon URI Simplizer alpha.1.3.1"
URL = "www.amazon.co.jp/\w(ASIN(/|=)|obidos/|product/)[0-9A-Z]+{10}?"
Match = "*([0-9A-Z]+{10})\0"
Replace = "$JUMP(URLリンク(www.amazon.co.jp))$LOG(R[Amazon] URLリンク(www.amazon.co.jp))"
URLリンク(www.amazon.co.jp) じゃなくて
URLリンク(www.amazon.co.jp) に飛ばす仕様なんだけど
これだとまずいのかなぁ。飛べない商品とかあるかもしれない。
Amazonの仕様自体イマイチわかってないからそこも不安…。
588:名無しさん@お腹いっぱい。
07/03/20 23:25:12 4ptHUCsg0
>>585
www.amazon.co.jp/商品名/dp/*
という形式の商品名の部分が長くなる原因。
この商品名の部分は実は何でも良かったりする。削除しても良し。
これをを削除するだけなら>>587を改造してこうすれば良いと思う。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Amazon URI Simplizer (out)"
Match = "URLリンク(www.amazon.co.jp)
Replace = "$JUMP(URLリンク(www.amazon.co.jp))"
589:名無しさん@お腹いっぱい。
07/03/20 23:33:47 0LIwAOV50
>587-588
ありがとうございました。
俺もそろそろ自分でフィルター作れるように勉強しないとな・・
590:名無しさん@お腹いっぱい。
07/03/21 00:13:13 1/lCY91m0
>>588
dpでいけるんですか…!
591:名無しさん@お腹いっぱい。
07/03/21 00:53:03 1/lCY91m0
ん、あれ?dpの商品名部分が削れればそれでOK?
>>587だと、(私の知る限りの)全ての形式のURIに対応、
かつASIN以降を全て消し去るという方向で書いてます。
お好きな方をお好みで、かな。
と思いきや、肝心の/dp/に対応してなかったので修正。
その他、商品画像ページ対応、ジャンプ先URIを更に短縮など。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Amazon URI Simplizer alpha.1.4 (out)"
URL = "(www.|)amazon(.co|).jp/\w((ASIN|obidos|dp|product(/images|))(/|=))[0-9A-Z]+{10}?"
Match = "*((images/|)([0-9A-Z]+{10}))\0"
Replace = "$JUMP(URLリンク(amazon.jp))"
アカウントサービス内での誤爆が一番恐い。
URIに含まれる文字列と[0-9A-Z]+{10}?でのASIN探しで
一応の防御はしてるつもりなんだけど。
592:名無しさん@お腹いっぱい。
07/03/21 01:05:18 d4dDjrEw0
>>591
せっかく作ってもらってるのに贅沢は言えません。
コピーする時に後ろ削れば良いだけですし、確かにASIN以降削れればよりよいことは確かですが
そのフィルターだとASINが「hoge1-hoge2-hoge3」と言う形式だと「hoge1」と認識してしまうようです
URLリンク(www.amazon.co.jp)
確認用
593:名無しさん@お腹いっぱい。
07/03/21 01:35:35 1/lCY91m0
>>592
これは恥ずかしい…。
URLマッチばっかり気にして実際のマッチを手抜きしてたのが原因でした。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Amazon URI Simplizer alpha.1.4.5 (out)"
URL = "(www.|)amazon(.co|).jp/\w((ASIN|obidos|dp|product(/images|))(/|=))[0-9A-Z]+{10}?"
Match = "\w((ASIN|obidos|dp|product)(/|=))((images/|)([0-9A-Z]+{10}))\0"
Replace = "$JUMP(URLリンク(amazon.jp))"
まだまだ弄ってみたら、今のところ不具合が
・ユーズド商品関連に対応できない
・商品画像ページで他のカラーが見れない
どんどん冗長になってくし、やっぱり>>588ぐらいシンプルな方が
機能的にも精神衛生的にもいいみたいです。勉強になりました。
594:think ◆MM0nnAOCiQ
07/03/21 01:55:04 lHqDQGV30
Amazonの商品紹介ページ(URL)をいくつか見ました。
どうやら、/dp/ の手前は「メーカー名-商品型番-備考」で構成されているようなので、以下の形でどうでしょうか?
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Omit Amazon URL [2007/03/21] test1"
Match = "http://(www.|)amazon.(co.|)jp/[\%0-9a-z]+{1,*}(-[\%0-9a-z]+)+{1,*}/(dp/[^/]+/)\0"
Replace = "$JUMP(URLリンク(www.amazon.co.jp))"
# 商品紹介(ASIN)
URLリンク(www.amazon.co.jp)商品コード/...
↓
URLリンク(www.amazon.co.jp)商品コード/
# リダイレクタ
URLリンク(www.amazon.co.jp)商品コード%25...
↓
URLリンク(www.amazon.co.jp)商品コード/
他にも亜種がいくつかあるようですが、最近は /dp/ に統一しようとしている流れに見えますね。
595:名無しさん@お腹いっぱい。
07/03/21 04:23:54 pz60mXe50
タブブラウザでJavascriptが有効だとアドレス短くならないよね?
IEだと短くなるね
596:名無しさん@お腹いっぱい。
07/03/21 19:42:09 /5cB5deu0
>>593-594
ありがとうございます。便利になりました。
私はこれで十分ですが発見した不具合でも
・Amazon外部からのURLが反応しない
・>>593はページを右上の「Would you like to see this page in English?」が効かなくなる
(ただし、外部から飛んできた時これをクリックするとURLが短くなるので英語を必要としない場合逆に便利)
URLリンク(www.google.co.jp)
確認用
597:名無しさん@お腹いっぱい。
07/03/21 22:05:22 xaNVUTV40
アマゾンのアフィリエイトをやっている身としては、
アソシエイトIDまで削られるのは遺憾だな。
598:名無しさん@お腹いっぱい。
07/03/21 23:22:57 NszwPh7m0
オミトロン使うような奴ならアフィは全殺しするだろ・・・常識的に考えて
599:名無しさん@お腹いっぱい。
07/03/21 23:30:02 8H5gmtUL0
確かアフィIDを指定のものに書き換えるフィルタっていうのも以前あったな
600:名無しさん@お腹いっぱい。
07/03/22 00:55:58 fq9nmX0b0
アマゾンのアフィリエイトは真っ先に殺す。
601:名無しさん@お腹いっぱい。
07/03/22 08:11:08 LPlM1PA70
アフィが見えなくなるのは別に構わないけどさ、
でも自ら進んで踏んだものは有効にしようよ。
602:名無しさん@お腹いっぱい。
07/03/22 16:25:24 uFlrt95P0
htaccessを無効にするフィルタ希望
ていうかURLリンク(karen.saiin.net)を表示させるフィルタ希望
603:名無しさん@お腹いっぱい。
07/03/22 16:37:01 IfmMON990
( ゜σ・・ ゜) ホジホジ
604:名無しさん@お腹いっぱい。
07/03/22 16:58:02 h6gQqGsT0
>>602
Content-Encoding: text/html; charset=csiso2022kr
605:名無しさん@お腹いっぱい。
07/03/22 17:12:43 IfmMON990
つ SJIS
606:名無しさん@お腹いっぱい。
07/03/22 20:49:05 i23UPNfh0
>602に行ってみたけど、
ヘッダで文字コードを詐称されると、フィルタがまったく効かなくなるね。
これは Proxomitron を無効化させるための手段になる。危険だな。
607:名無しさん@お腹いっぱい。
07/03/22 21:03:40 HF+LFNrU0
変なContent-Encodingは消したほうが良いみたいだな
gzip, chunk 以外知らんけど
608:名無しさん@お腹いっぱい。
07/03/22 21:10:10 CuyAqdZm0
>>599
それ教えて( ゚д゚) ホスィ・・・
609:名無しさん@お腹いっぱい。
07/03/22 21:43:52 h6gQqGsT0
>>602
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Encoding: Kill Content-Encoding (in)"
Match = "*"
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: Kill charset (in)"
Match = "text/html; charset="
Replace = "text/html;"
>>606-607
ですね。
610:名無しさん@お腹いっぱい。
07/03/22 22:24:29 LqIcExhd0
Match = "(^gzip|x-gzip)?"
とかにしとかなくていいの
611:名無しさん@お腹いっぱい。
07/03/22 22:57:21 h6gQqGsT0
>>610
URLリンク(www.youtube.com)
駄目だ、これ開いたら一面文字だらけになった。
612:名無しさん@お腹いっぱい。
07/03/23 00:57:41 zEKCeVAb0
文字コード詐称されてフィルターが効かないと言う状態なら
ブラウザも正しく認識出来ないのだからどっちにしろ危険は無いんじゃないのか?
613:名無しさん@お腹いっぱい。
07/03/23 16:29:48 3Pg7luNE0
オミトロン装備してるとどうも一部の頁が西ヨーロッパ言語になってしまうんだが、どうすればいい?
614:名無しさん@お腹いっぱい。
07/03/23 16:33:29 3Pg7luNE0
すまない。スレ違いだった。
615:名無しさん@お腹いっぱい。
07/03/23 21:25:45 +CQ+E6V20
>>609
駄目だった・・・
616:think ◆MM0nnAOCiQ
07/03/24 14:25:23 Vct6LEbc0
>>602,615
こちらの環境では、「>609の "Content-Type: Kill charset (in)" を取り入れて、JavaScriptを有効に」すれば、支障なく閲覧できています。
万が一問題があるようでしたら、以下のフィルタを取り込んでみてください。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: Fix g-kaizou charset (in) [2007/03/24]"
URL = "karen.saiin.net/~g-kaizou/"
Match = "text/html; charset=(^shift_jis|euc-jp|iso-2022-jp|utf-(8|16))"
Replace = "text/html; charset=shift_jis"
617:think ◆MM0nnAOCiQ
07/03/24 14:38:04 Vct6LEbc0
>616の続き。
Content-Typeヘッダの不正が原因なわけですが、Firefox, Opera9 (IE6, IE7 は [日本語(自動選択)] にチェックONで正常に閲覧可) で閲覧不可では少なからず訪問者を逃がしてしまいます。管理人の運営方針にもよりますが、サイト側の問題と受け取れると思います。
当分は、Proxomitronで凌ぐとしても、サイト運営者に報告しておいた方がお互いの益になるのではないでしょうか。
該当Webサイトのトップページには
-------------
2007年3月18日
なぜか全ページが文字化け(原因不明)
-------------
とあるので、運営者は原因を把握していないと思われます。
おそらく、htaccess に
AddType "text/html; charset=csiso2022kr" .html .htm
の記述があるので、これを
AddType "text/html; charset=shift_jis" .html .htm
に変更すれば、問題は解消されるでしょう。
…ということを運営者に報告してあげてください。
文字化け対策としての.htaccess
URLリンク(www.shtml.jp)
@IT:Javaの文字化け対策FAQ(1)
URLリンク(www.atmarkit.co.jp)
618:think ◆MM0nnAOCiQ
07/03/24 15:26:50 Vct6LEbc0
問題提起されている件は、
Content-Encoding: text/html; charset=csiso2022kr
でProxomitronフィルタが無効になるという現象ですね。
# Content-Typeの方はフィルタの挙動とは無関係のようです。
# 何より、Content-Typeヘッダを意図的に不正にするとWebブラウザでの閲覧の支障が出るので、そういう設定にされる可能性は低いと思います。
で、この
Content-Encoding: text/html; charset=csiso2022kr
という記述は、正しい書式なのでしょうか?
よく解らないなりに、調べてみると以下の文献が見つかり、
-----------------
内容コーディングは、section 3.5 にて定義されている。使用例を見よ。
HTTP/1.1: ヘッダフィールド定義 - 14.11 Content-Encoding
URLリンク(www.practical-lamp.com)
-----------------
最初は、登録機構は以下のトークンを登録している。... gzip, conpress, deflate, identity
HTTP/1.1: プロトコルパラメータ - 3.5 内容コーディング
URLリンク(www.practical-lamp.com)
-----------------
とあるので、少なくとも>602のWebサイトの出力するContent-Encodingヘッダの書式は誤っているような気がします。
619:think ◆MM0nnAOCiQ
07/03/24 15:28:47 Vct6LEbc0
>618の説が正しいとすると、Content-Encodingヘッダも運営者側で修正する方が望ましいので、サイト運営者が .htaccess から
AddEncoding "text/html; charset=csiso2022kr" .html .htm
を削除するという配慮があると有り難いですね。(書式は少し自信がないです…。)
あえて、Proxomitron排除のために残すというサイトがあった場合は、以下のフィルタで回避できる…と思います。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Encoding: Kill faulty value (in) [2007/03/24]"
Match = "(^gzip|compress|deflate|identity)"
620:名無しさん@お腹いっぱい。
07/03/25 00:39:47 U32bBhWY0
乙。 httpd.confも疑ったほうがいいですな。
>>619
Content-Encodingヘッダが無い時でもマッチしてしまうようだ。
621:名無しさん@お腹いっぱい。
07/03/25 00:44:01 ykWCl22f0
Match = "(^gzip|compress|deflate|identity)?+"
622:think ◆MM0nnAOCiQ
07/03/25 01:03:18 sQ09AHw80
>>620-621
レス有難う御座います。
>621を取り込ませていただきました。m(_ _)m
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Encoding: Kill faulty value (in) [2007/03/25]"
Match = "(^gzip|compress|deflate|identity)?"
> httpd.confも疑ったほうがいいですな。
>602は自宅サーバじゃないようなので、httpd.conf を編集する権限がないと思います。多分…。
623:名無しさん@お腹いっぱい。
07/03/25 01:43:58 U32bBhWY0
メンテの後文字化けしたんじゃなかったっけ? 運営側が何かやらかしたのでは。
624:think ◆MM0nnAOCiQ
07/03/25 02:57:05 sQ09AHw80
>>623
その可能性には思い至りませんでした。
ざっと調べてみたところ、同サービスの他のサイトでは同様の症状(Content-Type, Content-Encoding 含めて)が発生していないようです。
Google検索: site:saiin.net
URLリンク(www.google.co.jp)
一部のサイト(サーバ)だけ設定が誤っている可能性も否定出来ませんが…。
625:think ◆MM0nnAOCiQ
07/03/25 03:26:51 sQ09AHw80
何にしても両方チェックしておくに超したことはないですね。
その辺りも加味して、>602のサイトへ報告しておきました。
626:名無しさん@お腹いっぱい。
07/03/25 11:34:40 civrXBG40
ローカルに保存したhtmlをこれを通して閲覧する方法はありますか?
極力改変を加えずに保存し、閲覧時には無駄な広告やflashへのリンクを
殺して動作を軽くしたいです。
627:think ◆MM0nnAOCiQ
07/03/25 13:44:12 sQ09AHw80
>>626
URLコマンドの file// がありますが、ローカルファイルに対して常にProxomitronを通すには他のユーティリティを利用しないと無理だと思います。
URLリンク(www.pluto.dti.ne.jp)
他に、ローカルにWebサーバを立ち上げる方法があります。
628:626
07/03/25 15:25:33 Dk5Qg+wy0
>>627
そうですか・・
ありがとうございます。
629:think ◆MM0nnAOCiQ
07/03/25 22:23:31 sQ09AHw80
>602のサイト復旧。
結果的に、"Content-Type: text/html", Content-Encodingなし の状態に落ち着いたようです。
# 匿名で報告したので、具体的な対処法(原因)は判りませんでした。
何はともあれ、>602氏の問題は解決しました。
630:think ◆MM0nnAOCiQ
07/03/25 22:28:52 sQ09AHw80
失礼。
>629の件ですが、掲示板に復旧までの経緯が記載されていました。
.htaccess は無関係で、サーバの管理者に報告したのみ…ということです。
631:名無しさん@お腹いっぱい。
07/03/26 17:25:13 z4qaU8SK0
すべらない名無し(URLリンク(by774.blog73.fc2.com))にある、
Brainerのテキスト広告をカットしたいのですが、下記ではうまく仕事をしてくれません。
どなたかご教授願えせんでしょうか。
[Patterns]
Name = "[User] AD @ Brainer"
Active = TRUE
Limit = 1139
Match = "$NEST(<script[^>]+>,</script>)<script[^>]++ad.brainer.jp[^>]+></script>$NEST(<iframe[^>]+>,</iframe>)"
Replace = "<!-- AD @ Brainer - Blocked by Proxomitron -->"
>>626
FirefoxならAdblockが使える。
632:think ◆MM0nnAOCiQ
07/03/26 18:51:02 hy1J35Zo0
>>631
該当Webサイトのhtmlソースを拝見しました。
マッチさせたい箇所は以下の部分ですよね?
<script type="text/javascript"><!--
brainer_partner_id = "****";
...
brainer_channel = "****";
//--></script>
<script type="text/javascript" src="URLリンク(ad.brainer.jp)
## 引用元: URLリンク(by774.blog73.fc2.com)
iframe要素が見あたらないために、マッチしていないと思われます。
更に簡単に書くならば、<script type="text/javascript" src="URLリンク(ad.brainer.jp) だけにマッチさせても良いですね。
前述のscript要素の内容コードは、変数の初期化だけですので本元の処理部分をカットするだけでも広告を取り除けます。(script要素の順番に配慮しなくても良いのも利点)
細かいことをいえば、ad.brainer.jp はsrc属性値に限定した方がベターだと思います。
633:名無しさん@お腹いっぱい。
07/03/26 21:21:23 z4qaU8SK0
>>632
どうもありがとうがざいます。
火狐の「選択した部分のソースを表示する」を使ってしまい、確認を怠っていましたorz
今までのテストでおkなのに引っ掛からなかったフィルタも確認しなければ(´・ω・`)
前半の$NEST部分は仰るとおり必要ないのですが、
ソースを見たときに痕跡があると何故かヽ(`Д´)ノフォオオオ!となるので、
個人的にくっつけていたりいなかったり。
[Patterns]
Name = "[User] AD @ Brainer"
Active = TRUE
Limit = 640
Match = "$NEST(<script[^>]+>,</script>)<script[^>]++src="URLリンク(ad.brainer.jp)
Replace = "<!-- AD @ Brainer - Blocked by Proxomitron -->"
634:620
07/03/27 21:51:05 WBi+faku0
>>629-630
お疲れ様でした。 運営側のミスでしたか、こういうこともあるんですね。
>>626
ブラウザを起動してるときにProxomitronのメインウインドウに目的のhtmlファイルをD&Dすれば
フィルタリングされたページがブラウザに表示されます。 このときブラウザのアドレスバーに
表示されるURLをお気に入りに入れておくと便利かも知れません。
635:名無しさん@お腹いっぱい。
07/03/28 07:07:18 LqglA30l0
ローカルファイルに対してフィルタをかけたいんですが、うまくいきません。
具体体には、FirefoxのRSSリーダであるSageが作成するページに
フィルタリングをかけ、記事中に割り込んでくる広告を削除したいのですが。
URLリンク(file)でローカルファイルをWebページと同様にフィルタリングが
出来ると言うところまではわかったのですが(無論プレフィックスも設定しています)、
Webページフィルタの「URLのマッチ」の欄に、
URLリンク(file)
と入れてもマッチしていない様なのです。
フルパスだと
URLリンク(file)〜/chome/sage.html
と言う感じで、フルパスで書いても同じ現象でした。
ダミーとして簡単なHTMLファイルをC:直下において、URLリンク(file)と
やってみたのですが、やはりフィルタリングされない模様です。
どこか記述や使い方など、間違っている部分があればご指摘願いたいのですが・・・。
636:名無しさん@お腹いっぱい。
07/03/28 09:25:12 zqd/h+Lp0
「URLのマッチ」欄では"http(s|)://"は含めないで下さい。
637:名無しさん@お腹いっぱい。
07/03/28 13:17:57 YK1sZGBa0
>>635
「URLのマッチ」の欄を消したらフィルタは期待通りに動く? 動かないなら論外。 動くのなら>>636の確認と、
Proxomitronの 「設定」 - 「アクセス」 - 「URLベースのProxomitronコマンドを無効にする」 のチェックが入っていれば外す。
あと、Firefoxで広告消すならAdblockもあるよ。 新しいコマンドが追加されてて面白そう。
【CSS】Mozilla広告ブロック【Adblock】
スレリンク(software板:584-585番)
638:名無しさん@お腹いっぱい。
07/03/28 22:54:30 YK1sZGBa0
>>634の方法だとファイルパスの中の ":" が何故か "%7C" に置換されてしまう。( %7C = "|" 、正しくは %3A。)
このためページが見つからずにエラーになるのでそれを修正するURL Control系のリスト用コード。
--------------------------------------------------------------------------------------------
# ProxomitronウインドウにhtmlファイルをD&Dした時のURLを修正。 "prefix.." は各自のprefixに書き換える。
http://prefix..file//([a-z]+{1,2})\0%7C/\1&$JUMP(http://prefix..file//\0:/\1)
--------------------------------------------------------------------------------------------
この現象はデフォルトの4.5June、4.5 338で確認。
639:名無しさん@お腹いっぱい。
07/03/29 01:40:52 oWBN6QKE0
>>636-637
試してみましたが、期待通りに動きませんでした・・・論外って事ですね。
フィルタ自体はテストも動くし、同一内容のhtmlをコピーして別サーバにアップして試したところ
問題なく動いたので、フィルタが間違っているわけでは無いと思うのですが・・・。
ログを見ているとローカルに対しては全くフィルタを適用しようとしていない様に見えます。
設定のチェックは外しているのですが。
諦めます・・・レスありがとうございました。
640:名無しさん@お腹いっぱい。
07/03/29 01:47:44 nwH5ZQHV0
Sageは使ったことないからよく知らないけど、
広告だったら何か規則性があるんでないの?
<div class="ad"> の中に入っているとか、
<a href="広告サイトのURL"> とか。
スタイルシートで消すことが可能かもしれない。
641:名無しさん@お腹いっぱい。
07/03/29 04:02:19 oWBN6QKE0
ありがとうございます。
おっしゃるとおりで、普段はIEとFirefoxを使い分けているので、どちらかのブラウザに
依存する方法で広告削除はしたくなかったのですが、今回はFirefoxに依存した
問題なのだから、FirefoxのCSSで消してしまえば良かったのですよね。
Proxomitronで消す事ばかりを考えてしまって、そこに考えが至りませんでした。
件の広告はCSSを用いて無事に削除出来ました。
フィルタがローカルに適用されないというのが未だに解決していないのが
気持ちの悪いところではあるのですが、ともあれレスをくれた皆さん、
ありがとうございました。
642:名無しさん@お腹いっぱい。
07/03/29 07:31:26 ve+QA7+t0
>>639
Ctrl+F5で強制リロードしてもダメ?
643:名無しさん@お腹いっぱい。
07/03/29 07:56:26 oWBN6QKE0
>>642
キャッシュを読まずにリロードって事ですよね?
ダメでした・・・。
644:名無しさん@お腹いっぱい。
07/03/29 09:22:28 ve+QA7+t0
検索表現で改行コードを"\n"にしている。
WebにASCIIモードでアップ → 改行コードが 0Ah となり、マッチ
ローカルでフィルタリング → 改行コード 0Dh 0Ah でマッチせず
とか。(苦しいか...)
645:名無しさん@お腹いっぱい。
07/03/29 12:00:10 Tylg9NKN0
>643
chrome://sage/content/feedsummary.html?uri=[URL]
URLがこういう感じの形式だからじゃないの?
646:名無しさん@お腹いっぱい。
07/03/30 02:27:46 N5oMoR0M0
>>644
検索条件に改行コードは含んでいないです。
>>645
ロケーションバーに表示されるsageのURLは、
file:///C:/Documents%20and%20Settings/UserName/(省略)/chrome/sage.html
です。省略部分は一般のプロファイルの場所です。
レスが頂けるのは大変嬉しく勉強にもなるのですが、
流石にスレ違いな気がしてきたので、スルーしていただいて結構です・・・。
すみません、ありがとうございます。
647:名無しさん@お腹いっぱい。
07/03/30 03:28:46 Fk+PoKNY0
FXがローカルのファイルを直接開いてるんじゃないの?
そうだとしたら対処不能
648:名無しさん@お腹いっぱい。
07/03/30 14:55:49 fRAcFZO30
URLリンク(www.bbsnews.jp)
ここのトップだけscriptタグを範囲にしてマッチさせようとしても広告消してくれないんですが上手い方法ってあるんでしょうか?
他のランキングは消せたので原因がよくわかりません
649:think ◆MM0nnAOCiQ
07/03/30 21:43:47 z1oSbQ+H0
>>648
特に問題は見あたりませんでした。
マッチしないフィルタを開示できるのであれば、アドバイスできるかもしれません。
650:名無しさん@お腹いっぱい。
07/03/31 13:04:14 qvhXZMuJ0
とりあえずのこの脆弱性対応
URLリンク(www.microsoft.com)
Name = "Cut Cursor"
Active = TRUE
Limit = 500
Match = "cursor (:|=) [^;}>]+"
超誤爆上等注意
まぁ、見ただけでアウトな脆弱性だから対応パッチが出るまでのしのぎレベルで
#私は昔から常用してるフィルタなんだけどねw
651:名無しさん@お腹いっぱい。
07/04/01 00:28:32 uRgnshK20
<font style="cursor:url(mailto:kuso.ani)">feffeffe</font>
652:名無しさん@お腹いっぱい。
07/04/01 15:01:41 0jf8ZLJk0
TOK2広告、4月1日現在、Limit = 13640
確実に増え続けている。
Proxomitronを意識しているとしか思えないんだが。
653:名無しさん@お腹いっぱい。
07/04/01 15:05:11 NVBogZYX0
↑馬鹿
654:名無しさん@お腹いっぱい。
07/04/01 17:20:26 EDThOvVs0
やっつけ
Match = "(c|\c)(u|\u)(r|\r)(s|\s)(o|\o)(r|\r) (:|=) [^;}>]+"
655:名無しさん@お腹いっぱい。
07/04/01 17:23:40 EDThOvVs0
ぐは
これでどうだ
Match = "(c|\c)(u|\u)(r|\r)(s|\s)(o|\o)(r|\r) (:|=) [^;}>]+"
656:名無しさん@お腹いっぱい。
07/04/01 17:29:21 EDThOvVs0
これ、10進とかにも対応とか考えると重くなるだけな気がするな
$UESCの検索側版って無いのかな?
657:名無しさん@お腹いっぱい。
07/04/01 19:16:38 CvldivIu0
CSS内の数値文字参照を本来の文字に戻してから、
他のフィルタで処理したほうが良いような
658:名無しさん@お腹いっぱい。
07/04/01 20:55:33 NqLKJzxg0
>>652
>>574 では駄目なのか
659:名無しさん@お腹いっぱい。
07/04/01 21:20:06 YuF/sEJL0
>>650
ユーザースタイルシートで
*{cursor:auto!important;}
とやったらどうかな
660:名無しさん@お腹いっぱい。
07/04/02 00:01:33 BXoP6IEA0
IE6じゃ!important使えなかった希ガス
661:名無しさん@お腹いっぱい。
07/04/02 00:48:07 UKQKuB2c0
>>660
え??????
662:名無しさん@お腹いっぱい。
07/04/02 13:43:50 poYN2CYf0
>>653>>658
うん、TOPではなくUNDERのほうだよ。
TOPは増えないから通常通りで大丈夫。
663:名無しさん@お腹いっぱい。
07/04/02 20:31:38 ezmG3rBo0
>>659
なるほど、その方法は良さそうだな
考えつけなかった
664:名無しさん@お腹いっぱい。
07/04/03 00:33:16 J5HArJ7i0
>>659,663
それ、ちゃんと機能する?
IE6では駄目だった。
>>650,655の10,16進大文字小文字対応…重いかな?
実体参照の区切り文字 ; が無くても有効だ!
Match = "(c|\&#(x63|x43|67|99)(;|))"
"(u|\&#(x75|x55|85|117)(;|))"
"(r|\&#(x72|x52|82|114)(;|))"
"(s|\&#(x73|x53|83|115)(;|))"
"(o|\&#(x6F|x4F|79|111)(;|))"
"(r|\&#(x72|x52|82|114)(;|)) (:|=)[^;}>"]+"
実体参照が有効なのはインラインでのスタイル定義(>>651)だけで
.cssファイルと<style>ブロック内では無効みたいだね。
665:名無しさん@お腹いっぱい。
07/04/03 01:34:59 NxFim7nS0
アニメーションカーソルはfaviconにも使えるそうだし拡張子偽装も出来るそうだから
弾くの難しいだろうね
666:名無しさん@お腹いっぱい。
07/04/03 01:58:18 +KrQYJGn0
IEを使わない。これで>665も解決できると思われ。
MIME-Type もろくに見ないようなブラウザを使うのが悪いと言わざるをえない。
favicon は、*.ico か image/x-icon を\kすればいいのかな。
667:名無しさん@お腹いっぱい。
07/04/03 02:49:31 6wNViq4u0
うは、数字前部複数の 0 、文字間に %00 があっても有効だった。
キリがない…orz もう、これで終わりにしますぅ。>>664でした。
Match = "(c|\&#(x[0]+{0,*}(63|43)|[0]+{0,*}(67|99)) (;|)) "
"(u|\&#(x[0]+{0,*}(75|55)|[0]+{0,*}(85|117)) (;|)) "
"(r|\&#(x[0]+{0,*}(72|52)|[0]+{0,*}(82|114)) (;|)) "
"(s|\&#(x[0]+{0,*}(73|53)|[0]+{0,*}(83|115)) (;|)) "
"(o|\&#(x[0]+{0,*}(6F|4F)|[0]+{0,*}(79|111)) (;|)) "
"(r|\&#(x[0]+{0,*}(72|52)|[0]+{0,*}(82|114)) (;|)) (:|=) [^;}>"]+"
668:名無しさん@お腹いっぱい。
07/04/03 02:50:32 O0ftgExI0
>>664
ちょいとcとかにすりゃもうすり抜けられちゃうし。
こういうのってそうやってゴチャゴチャ書いててもやっつけ解決にすらならんよ。
669:668
07/04/03 02:52:16 O0ftgExI0
入れ違いになってしまった。
670:名無しさん@お腹いっぱい。
07/04/03 02:55:49 O0ftgExI0
ちなみにキミの書いているのは(文字)実体参照ではなくて数値文字参照だ。
どうでもいいけど。
671:名無しさん@お腹いっぱい。
07/04/03 03:58:17 u5Y7aheh0
>>667補足です。
>・・・文字間に %00 があっても有効だった。
& # x 0 0 6 3 ; u r s o r :
↑半角スペースを %00 と読み替えて下さい。
当然ながら>>667ではマッチしませんから…中途半端でスマソでした。
>>669-670
了解です。
672:名無しさん@お腹いっぱい。
07/04/03 04:53:45 +KrQYJGn0
仮に理想的なフィルタができたとしても、
よほど処理が軽くない限りは使いたくないものだな。
そこまで悪意を持ったサイトなんてあるんだかというのが知りたい。
まあ、精神的ブラクラを集めたような物好きサイトがあるのも確かだが。
673:名無しさん@お腹いっぱい。
07/04/04 03:51:09 j6rLwbwp0
この手の物をおみとろんで全部弾くには相当な手間になると言う事か
>>672
半分は思考実験かと
今回だけでなく、今後にも役に立つ可能性が残るし
674:名無しさん@お腹いっぱい。
07/04/04 09:03:43 Ww/FJYxO0
プロファイル結果...
サンプルテキスト : 30000 バイト(このスレのhtmlソース)
成功マッチ数 : 1
(5回試行した平均値)
>>650 平均時間 : 0.37 (ミリ秒)
>>655 平均時間 : 0.72 (ミリ秒)
>>664 平均時間 : 0.73 (ミリ秒)
>>667 平均時間 : 0.73 (ミリ秒)
↓平均時間 : 0.73 (ミリ秒)
Match = "(c|\& # (x (0 )+{0,*}(6 3|4 3)|(0 )+{0,*}(6 7|9 9)) (;|)) "
"(u|\& # (x (0 )+{0,*}(7 5|5 5)|(0 )+{0,*}(8 5|1 1 7)) (;|)) "
"(r|\& # (x (0 )+{0,*}(7 2|5 2)|(0 )+{0,*}(8 2|1 1 4)) (;|)) "
"(s|\& # (x (0 )+{0,*}(7 3|5 3)|(0 )+{0,*}(8 3|1 1 5)) (;|)) "
"(o|\& # (x (0 )+{0,*}(6 F|4 F)|(0 )+{0,*}(7 9|1 1 1)) (;|)) "
"(r|\& # (x (0 )+{0,*}(7 2|5 2)|(0 )+{0,*}(8 2|1 1 4)) (;|)) (:|=) [^;}>"]+"
興味本位の改変なので、突っ込まんで下され。
>>672-673
同意。
675:名無しさん@お腹いっぱい。
07/04/04 09:19:38 /oqEdOnS0
<font style="cursor feffeffe:url(mailto:kuso.ani)">nmooi</font>
URLリンク(www.microsoft.com)
676:名無しさん@お腹いっぱい。
07/04/04 09:54:55 qTxRbb9j0
>>675
パッチ来たのか、今回は随分早いな。
677:名無しさん@お腹いっぱい。
07/04/05 03:37:36 l42HB2fw0
>>675
おお!
他にどんなパターンが考えられますか?
678:名無しさん@お腹いっぱい。
07/04/05 14:38:16 /B+A98J/0
nico動画のID表示フィルタってありませんか?
679:名無しさん@お腹いっぱい。
07/04/06 13:25:48 /V316V1o0
URLをリストで管理する際に、ずっと感じている疑問。
href=$AV((URLリンク(|)">URLリンク(|▼オプションを表示暇つぶし2ch
4321日前に更新/385 KB
担当:undef