*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};
- 直すとしたら、こんな感じ((これだと、スキーマを''省略してもかまわない''になってしまいますが))ですかね? -- [[ぱんだ]] &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&amp;page='.rawurlencode($page);

#comment

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.143 sec.

OSDN