DoboWiki
Top
> 自由区/スパム対策/.jp以外のドメインを禁止 をテンプレートにして作成
自由区/スパム対策/.jp以外のドメインを禁止 をテンプレートにして作成
開始行:
*.jp以外のドメインからの投稿を禁止する [#c08452e9]
スパム投稿のほとんどは海外から行われます。投稿もとのドメ...
例えば、[[OTD掲示板>http://blog.livedoor.jp/bbsnews/archi...
.ae .ar .at .au .be .bg .bk .bn .br .by .ca .cc .ch .cl ....
.dk .do .ee .es .eu .fi .fm .fr .gr .hk .hr .hu .id .ie ....
.kg .kr .mu .mx .my .nl .nu .nz .om .ph .sa .se .sg .si ....
.ua .uk .us .uy .pe .pk .pl .ru .ro .ve .za
ここでは、投稿もとのドメイン名を調べ、.jp以外のドメインか...
なお、IPアドレスから国を調べる方法は、「[[不正アクセスの...
**Perl [#uea445cf]
まず、Perlのコードを示します。
#code(perl){{
#ホスト名の取得
$remote_addr = $ENV{'REMOTE_ADDR'};
$remote_host = $ENV{'REMOTE_HOST'};
if (!$remote_host || $remote_host eq $remote_addr)
{
$remote_host = gethostbyaddr(pack('C4',split(/\./, $remo...
}
#ホスト名が取得できなかった時
if (!$remote_host || $remote_host eq $remote_addr)
{
print 'ホスト名の逆引きができないホストからの投稿は禁止...
exit;
}
#ホスト名が許可されたものか調べる
#ここでは、.jpドメインだけを許可する
if ($remote_host !~ /\.jp$/)
{
print '.jpドメイン以外のホストからの投稿は禁止されていま...
exit;
}
print 'ホストは.jpドメインです。';
}}
**PHP [#k1972fdd]
次にPHPのコードを示します。
#code(php){{
//ホスト名を取得する
$remote_host = $_SERVER['REMOTE_HOST'];
if (empty($remote_host) || $remote_host == $_SERVER['REMO...
{
$remote_host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
}
//ホスト名が取得できなかった時
if (empty($remote_host) || $remote_host == $_SERVER['REMO...
{
exit('ホスト名の逆引きができないホストからの投稿は禁止さ...
}
//許可されたホストか調べる
//ここでは、.jpドメインだけを許可する
if (!preg_match('/\.jp$/', $remote_host))
{
exit('.jpドメイン以外のホストからの投稿は禁止されていま...
}
exit('ホストは.jpドメインです。');
}}
**C# [#r7945f9f]
ASP.NETのC#のコードは、次のようになります。
#code(csharp){{
protected void Page_Load(object sender, EventArgs e)
{
//ホスト名を取得する
string hostName = Request.UserHostName;
if (hostName == "" || hostName == Request.UserHostAdd...
{
hostName = System.Net.Dns.Resolve(Request.UserHos...
}
//ホスト名が取得できなかった時
if (hostName == "" || hostName == Request.UserHostAdd...
{
Label1.Text =
"ホスト名の逆引きができないホストからの投稿は...
return;
}
//許可されたホストか調べる
//ここでは、.jpドメインだけを許可する
if (!System.Text.RegularExpressions.Regex.IsMatch(hos...
{
Label1.Text =
".jpドメイン以外のホストからの投稿は禁止され...
return;
}
Label1.Text = "ホストは.jpドメインです。";
}
}}
**.htaccessで制限する [#lfeda95c]
.htaccessを使って海外からのアクセスを制限する方法は、[[IP...
//これより下は編集しないでください
#pageinfo([[:Category/インターネット]],2007-05-14 (月) 01...
終了行:
*.jp以外のドメインからの投稿を禁止する [#c08452e9]
スパム投稿のほとんどは海外から行われます。投稿もとのドメ...
例えば、[[OTD掲示板>http://blog.livedoor.jp/bbsnews/archi...
.ae .ar .at .au .be .bg .bk .bn .br .by .ca .cc .ch .cl ....
.dk .do .ee .es .eu .fi .fm .fr .gr .hk .hr .hu .id .ie ....
.kg .kr .mu .mx .my .nl .nu .nz .om .ph .sa .se .sg .si ....
.ua .uk .us .uy .pe .pk .pl .ru .ro .ve .za
ここでは、投稿もとのドメイン名を調べ、.jp以外のドメインか...
なお、IPアドレスから国を調べる方法は、「[[不正アクセスの...
**Perl [#uea445cf]
まず、Perlのコードを示します。
#code(perl){{
#ホスト名の取得
$remote_addr = $ENV{'REMOTE_ADDR'};
$remote_host = $ENV{'REMOTE_HOST'};
if (!$remote_host || $remote_host eq $remote_addr)
{
$remote_host = gethostbyaddr(pack('C4',split(/\./, $remo...
}
#ホスト名が取得できなかった時
if (!$remote_host || $remote_host eq $remote_addr)
{
print 'ホスト名の逆引きができないホストからの投稿は禁止...
exit;
}
#ホスト名が許可されたものか調べる
#ここでは、.jpドメインだけを許可する
if ($remote_host !~ /\.jp$/)
{
print '.jpドメイン以外のホストからの投稿は禁止されていま...
exit;
}
print 'ホストは.jpドメインです。';
}}
**PHP [#k1972fdd]
次にPHPのコードを示します。
#code(php){{
//ホスト名を取得する
$remote_host = $_SERVER['REMOTE_HOST'];
if (empty($remote_host) || $remote_host == $_SERVER['REMO...
{
$remote_host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
}
//ホスト名が取得できなかった時
if (empty($remote_host) || $remote_host == $_SERVER['REMO...
{
exit('ホスト名の逆引きができないホストからの投稿は禁止さ...
}
//許可されたホストか調べる
//ここでは、.jpドメインだけを許可する
if (!preg_match('/\.jp$/', $remote_host))
{
exit('.jpドメイン以外のホストからの投稿は禁止されていま...
}
exit('ホストは.jpドメインです。');
}}
**C# [#r7945f9f]
ASP.NETのC#のコードは、次のようになります。
#code(csharp){{
protected void Page_Load(object sender, EventArgs e)
{
//ホスト名を取得する
string hostName = Request.UserHostName;
if (hostName == "" || hostName == Request.UserHostAdd...
{
hostName = System.Net.Dns.Resolve(Request.UserHos...
}
//ホスト名が取得できなかった時
if (hostName == "" || hostName == Request.UserHostAdd...
{
Label1.Text =
"ホスト名の逆引きができないホストからの投稿は...
return;
}
//許可されたホストか調べる
//ここでは、.jpドメインだけを許可する
if (!System.Text.RegularExpressions.Regex.IsMatch(hos...
{
Label1.Text =
".jpドメイン以外のホストからの投稿は禁止され...
return;
}
Label1.Text = "ホストは.jpドメインです。";
}
}}
**.htaccessで制限する [#lfeda95c]
.htaccessを使って海外からのアクセスを制限する方法は、[[IP...
//これより下は編集しないでください
#pageinfo([[:Category/インターネット]],2007-05-14 (月) 01...
ページ名:
▲
▼
[
トップ
] [
新規
|
子ページ作成
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]