- 追加された行はこの色です。
- 削除された行はこの色です。
*Referer の IGNORE 定義について [#v1210820]
-ページ: BugTrack
-投稿者: [[upk]]
-優先順位: 低
-状態: 着手
-状態: 完了
-カテゴリー: その他
-投稿日: 2004-03-21 (日) 23:12:30
-バージョン:
**メッセージ [#n87a930a]
Referer SPAM などの対応のために、:config/plugin/referer/config に IGNORE を定義することで、リンクしないようにする機能がある。
その IGNORE の定義時に、http:// を外して定義させる仕様にしたのは、Referer SPAM などのリンクを抑止することが目的なので、定義すらリンクされることは望ましいことではない。ということから、加えた仕様であるものの、現仕様では、その機能は無くなって、http:// から定義しないとマッチしない。
この仕様を、当初仕様に戻すか?現仕様のままにするのか?
について、議論したく、ここに書きました。
----
- スキーマ部分を書いてしまうとリンクになってしまって、Refererの発生源になり得るわけですから。当初の仕様どおり「ホスト名以降」で統一していいと思います。 -- [[ぱんだ]] &new{2004-03-22 (月) 00:13:29};
- スキーマ部分を書いてしまうとリンクになってしまって、[[Referer]] の発生源になり得るわけですから。当初の仕様どおり「ホスト名以降」で統一していいと思います。 -- [[ぱんだ]] &new{2004-03-22 (月) 00:13:29};
- 直すとしたら、こんな感じ((これだと、スキーマを''省略してもかまわない''になってしまいますが))ですかね? -- [[ぱんだ]] &new{2004-03-22 (月) 00:13:29};
diff -u -r1.5 referer.inc.php
--- referer.inc.php 20 Aug 2003 10:54:27 -0000 1.5
+++ referer.inc.php 21 Mar 2004 15:09:39 -0000
@@ -194,7 +194,7 @@
foreach ($ignore_url as $x)
{
- if (strpos($url,$x) === 0)
+ if (strpos($url,$x) !== FALSE)
{
return 1;
}
-プロトコルを明示するのも、今1つとも思うので、この修正で、OKと思います。この案件とは違うのですが、referer に手を入れるなら、ついでに、mb_convert_encoding() もやって表示してくれると、パラメータが日本語化されて良いんですけどね。まぁ、本来 BugTrackを分けるべきかと思いますけど。-- [[upk]] &new{2004-03-22 (月) 02:46:47};
@@ -115,6 +115,7 @@
$url = preg_replace('/([" \x80-\xff]+)/e','rawurlencode("$1")',$url);
$s_url = htmlspecialchars($url);
+ $s_url_c = mb_convert_encoding(rawurldecode($s_url),SOURCE_ENCODING,"auto");
$lpass = get_passage($ltime,FALSE); // 最終更新日時からの経過時間
$spass = get_passage($stime,FALSE); // 初回登録日時からの経過時間
@@ -127,7 +128,7 @@
// 適用不可データのときはアンカーをつけない
$body .= referer_ignore_check($url) ?
- " <td>$s_url</td>\n" : " <td><a href=\"$s_url\">$s_url</a></td>\n";
+ " <td>$s_url</td>\n" : " <td><a href=\"$s_url\">$s_url_c</a></td>\n";
$body .= " </tr>\n";
}
$href = $script.'?plugin=referer&page='.rawurlencode($page);
-cvsに投入しました。 [[cvs:plugin/referer.inc.php]](v1.4:r1.6) -- [[ぱんだ]] &new{2004-03-22 (月) 23:58:33};
#comment
//#comment