SlideShare une entreprise Scribd logo
1  sur  36
Télécharger pour lire hors ligne
コメントスパム対策から始まった
WordPress生活
〜Throws SPAM Away 誕生秘話〜
株式会社ジーティーアイ さとうです。
わたしについて
宮城県出身。
肉体労働系でバイトしながらバンド活動していた20代。
ITバブルに乗じてブラック企業に就職しシステムエンジニアに転身。
ハッタリを武器に技術を磨き、嘘から出た誠でなんとかここまできました。
2012年、株式会社ジーティーアイで起業し今に至る。
WordPressとの出会い
WordPressとの出会いは 2011年(くらい)
在籍していた会社の社長から
「友人のサイトを見てくれ」と言われ仕方なく見ることになった。
当時の最新バージョンは 3.3くらいだったが、その友人のサイトは・・・
WordPress ME 2.1 なにそれ!?
なんとか文字コードがUTF8だったものの現バージョンとは構成が違った古い
ものでした。
・・・・喉元過ぎれば熱さ忘れる。
苦労した記憶はあるんですが、
なにをどうしたか参考になるよう
なことを一切残していませんの
で詳細割愛します。
・・・スパムとは知らずに喜んでいたユーザー
バージョンもさることながら
相談をいただいたサイトは
スパムコメントの温床に
なっていたのでした。
コメントスパムの怖さ
WordPressはもともとブログシステムとして誕生しているのでコメ
ント機能が付いています。このコメント欄にコメントされまくると
こんなことが起きます。
・データ量が肥大しサイトが重くなる
・コメント通知メールが多すぎてメールボックスがいっぱいになり
メールが受け取れなくなる
・ムカつく
社長の友人なので・・・とりあえ
ずコメントデータからいらないも
のを削除することに。
しかし
消しても消しても次々に書き込まれている
じゃぁ〜ないですか。
社長の友人に泣きつかれ社長が
「なんとかしてくれ・・・」と
こっちが言いたいわ!!
じゃあ、コメント機能切っちゃえばいいよ
ね!?
要するにスパムコメント書き込ませなきゃい
いのよね??
ね!?
え!?なに!?
コメント主体の
コミュニティサイト!?
・・・というわけで
スパムコメントだけを排除する機能を作るし
かなくなりました。
試行錯誤
「削除しないといけないスパムコメント投
稿」と「正常な投稿」を分けて削除すべき
は削除しないといけません。
その1
コメントスパムは外国から書き込まれている・・・
英語だけのコメントは消そう!
コメントテーブルの中のバイト数と文字数が一緒の
もの = 1バイト文字で書かれている = 英語
じゃないの!?
ってことでそれを削除!
(SQLでMySQLからリレーションしているwp_commentsと
wp_commentmetaを削除・・・)
スパムコメントって同じIPからいっぱい投稿されてい
る!!
ってことでそれらを削除!
(SQLでMySQLからリレーションしているwp_commentsと
wp_commentmetaを削除・・・)
げげげ!英語じゃない外国語もあるの!!??
日本語が入っていないかどうか判定しないと・・・
ってことでそれらも削除!
(SQLでMySQLからリレーションしているwp_commentsと
wp_commentmetaを削除・・・)
とりあえず、作業はコメント機能を停止しな
がら行いました。
でも、今後はコメント機能再開しないといけ
ません・・・。
で、できました!
Throws SPAM Away
https://wordpress.org/plugins/throws-spam-away/
WordPressの公式プラグインになっています!
英語力丸でないから公式申請もままならなかったがなんとか申請
して承認され公式プラグインに。
現在、日本国内だけでアクティブインストール
2万件以上!
Throws SPAM Away の名前の由来
捨てるっていうか投げっぱなしにするのがこのプラグインの特徴
正当じゃないコメントにでも親切にエラー表示してあげるからコメント出来るまで
リトライするんだなってことで
エラーメッセージを出さず・・・
受け付けたみたいにシレッとする!
このことでリトライされることもなく
コメント攻撃もジョジョに減っていきました。
でも、最終的に正当なコメントはそれほど残らなくて主催者ガッカリ(笑)
・・・さみしそうなので
スパムコメントがどのくらい入ったか見られる機能も作りました。
日に日にスパム投稿が
減っていく喜び
または
これだけのスパムコメント
が闇に葬り去られたって
いう快感
が得られます。
※実は前の画像は私のブログの最近のも
のです。
今でも多い時で日に40のIPアドレスから50
件以上のスパムコメント投稿があります。
もちろん
このプラグインのおかげですべ
て無きものになってますがね
(笑)
ぜひ、ご利用ください!
この他にも現在はさまざまな条件でコメントスパム排除
・コメント内にリンクが3つ以上あったら排除(数指定できます)
・NGキーワード指定で指定キーワードを含んだら排除
・一定時間内に数回排除されたIPアドレスからの正常コメント排除
・Akismetなどで「SPAM認定」されたIPアドレスは自動排除
などなど
その他こちらが詳しい http://netaone.com/wp/throws-spam-away/
(私が書いた記事じゃないのがポイントw)
他のプラグインの補助的にも利用できる!
メールフォームプラグインのバリデーション補助に使った例をキータに投稿し
てます。
・WordPressプラグインThrows SPAM Awayを使ってContact Form 7に
IP制限などのバリデーションを追加する方法
http://qiita.com/gtijp/items/e1e52c631f62c9ce4224
・WordPressプラグインThrows SPAM Awayを使ってMW WP FormにNG
ワード指定などのバリデーションを追加する方法
http://qiita.com/gtijp/items/65bf0af75140fe2774a1
他にもプラグイン作ってます
1月1日になったら「あけましておめでとう!」って表示したい!!を叶える定
時表示切替プラグイン 
TIme goes by
https://wordpress.org/plugins/time-goes-by/
Welcart用 PAY.JP決済追加モジュールプラグイン
https://color.ful.jp/
ご静聴ありがとうございました!
今後ともよろしくお願いいたします!
いろいろ発信しておりますのでお気軽にアクセスしてくださ
い!
https://www.facebook.com/gticojp
https://www.facebook.com/taman777
Twitter: 会社 gtijp 個人 taman777

Contenu connexe

En vedette

Questionnaire results
Questionnaire resultsQuestionnaire results
Questionnaire resultsasmediac16
 
My journey from Fragile, to Agile and now DevOps
My journey from Fragile, to Agile and now DevOpsMy journey from Fragile, to Agile and now DevOps
My journey from Fragile, to Agile and now DevOpsJason Man
 
Confined space – hazards –risk –control measures
Confined space – hazards –risk –control measuresConfined space – hazards –risk –control measures
Confined space – hazards –risk –control measuresAnand Prakash
 
DigiRap International Photography Award Winners 2016: Category Travel (Colour)
DigiRap International Photography Award Winners 2016: Category Travel (Colour)DigiRap International Photography Award Winners 2016: Category Travel (Colour)
DigiRap International Photography Award Winners 2016: Category Travel (Colour)maditabalnco
 
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そうgulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そうToshimichi Suekane
 
WordPressセキュリティ対策ど~してる?
WordPressセキュリティ対策ど~してる?WordPressセキュリティ対策ど~してる?
WordPressセキュリティ対策ど~してる?Toyohiko Asai
 
かんたん!わかりやすいWafのおはなし
かんたん!わかりやすいWafのおはなしかんたん!わかりやすいWafのおはなし
かんたん!わかりやすいWafのおはなしharuna tanaka
 
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...windi silviana
 
Os scheduling Algorithms
Os scheduling AlgorithmsOs scheduling Algorithms
Os scheduling AlgorithmsNeelamani Samal
 
3Com 160036000
3Com 1600360003Com 160036000
3Com 160036000savomir
 

En vedette (12)

Questionnaire results
Questionnaire resultsQuestionnaire results
Questionnaire results
 
My journey from Fragile, to Agile and now DevOps
My journey from Fragile, to Agile and now DevOpsMy journey from Fragile, to Agile and now DevOps
My journey from Fragile, to Agile and now DevOps
 
Confined space – hazards –risk –control measures
Confined space – hazards –risk –control measuresConfined space – hazards –risk –control measures
Confined space – hazards –risk –control measures
 
Ab censeñanza ddhh
Ab censeñanza ddhhAb censeñanza ddhh
Ab censeñanza ddhh
 
DigiRap International Photography Award Winners 2016: Category Travel (Colour)
DigiRap International Photography Award Winners 2016: Category Travel (Colour)DigiRap International Photography Award Winners 2016: Category Travel (Colour)
DigiRap International Photography Award Winners 2016: Category Travel (Colour)
 
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そうgulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
 
WordPressセキュリティ対策ど~してる?
WordPressセキュリティ対策ど~してる?WordPressセキュリティ対策ど~してる?
WordPressセキュリティ対策ど~してる?
 
かんたん!わかりやすいWafのおはなし
かんたん!わかりやすいWafのおはなしかんたん!わかりやすいWafのおはなし
かんたん!わかりやすいWafのおはなし
 
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
 
Deep freezer
Deep freezerDeep freezer
Deep freezer
 
Os scheduling Algorithms
Os scheduling AlgorithmsOs scheduling Algorithms
Os scheduling Algorithms
 
3Com 160036000
3Com 1600360003Com 160036000
3Com 160036000
 

Plus de 毅 佐藤

コミュニティで アウトプットを続ける理由
コミュニティで アウトプットを続ける理由コミュニティで アウトプットを続ける理由
コミュニティで アウトプットを続ける理由毅 佐藤
 
合言葉は…Backlog感出しますか!
合言葉は…Backlog感出しますか!合言葉は…Backlog感出しますか!
合言葉は…Backlog感出しますか!毅 佐藤
 
こんなプロジェクトはいやだ! JBUG190306
こんなプロジェクトはいやだ! JBUG190306こんなプロジェクトはいやだ! JBUG190306
こんなプロジェクトはいやだ! JBUG190306毅 佐藤
 
こんなプロジェクトはいやだ!
こんなプロジェクトはいやだ!こんなプロジェクトはいやだ!
こんなプロジェクトはいやだ!毅 佐藤
 
Gti is not dead.
Gti is not dead.Gti is not dead.
Gti is not dead.毅 佐藤
 
Stripe payment 20180416
Stripe payment 20180416Stripe payment 20180416
Stripe payment 20180416毅 佐藤
 
601worksランチ会ディスカッション
601worksランチ会ディスカッション601worksランチ会ディスカッション
601worksランチ会ディスカッション毅 佐藤
 
601worksランチ会 お見積もり座談会
601worksランチ会 お見積もり座談会601worksランチ会 お見積もり座談会
601worksランチ会 お見積もり座談会毅 佐藤
 
Cloud garage使って ECサイトの構築
Cloud garage使って ECサイトの構築Cloud garage使って ECサイトの構築
Cloud garage使って ECサイトの構築毅 佐藤
 
Welcart にStripe決済を追加するプラグイン作った! 〜 Stripe on welcart
Welcart にStripe決済を追加するプラグイン作った! 〜 Stripe on welcartWelcart にStripe決済を追加するプラグイン作った! 〜 Stripe on welcart
Welcart にStripe決済を追加するプラグイン作った! 〜 Stripe on welcart毅 佐藤
 
休みたいときに休める Time goes by プラグイン | WordBench倉敷
休みたいときに休める Time goes by プラグイン | WordBench倉敷休みたいときに休める Time goes by プラグイン | WordBench倉敷
休みたいときに休める Time goes by プラグイン | WordBench倉敷毅 佐藤
 
効果的なブログの書き方 ~仕事につながるブログ術、3つのポイント~
効果的なブログの書き方 ~仕事につながるブログ術、3つのポイント~効果的なブログの書き方 ~仕事につながるブログ術、3つのポイント~
効果的なブログの書き方 ~仕事につながるブログ術、3つのポイント~毅 佐藤
 

Plus de 毅 佐藤 (12)

コミュニティで アウトプットを続ける理由
コミュニティで アウトプットを続ける理由コミュニティで アウトプットを続ける理由
コミュニティで アウトプットを続ける理由
 
合言葉は…Backlog感出しますか!
合言葉は…Backlog感出しますか!合言葉は…Backlog感出しますか!
合言葉は…Backlog感出しますか!
 
こんなプロジェクトはいやだ! JBUG190306
こんなプロジェクトはいやだ! JBUG190306こんなプロジェクトはいやだ! JBUG190306
こんなプロジェクトはいやだ! JBUG190306
 
こんなプロジェクトはいやだ!
こんなプロジェクトはいやだ!こんなプロジェクトはいやだ!
こんなプロジェクトはいやだ!
 
Gti is not dead.
Gti is not dead.Gti is not dead.
Gti is not dead.
 
Stripe payment 20180416
Stripe payment 20180416Stripe payment 20180416
Stripe payment 20180416
 
601worksランチ会ディスカッション
601worksランチ会ディスカッション601worksランチ会ディスカッション
601worksランチ会ディスカッション
 
601worksランチ会 お見積もり座談会
601worksランチ会 お見積もり座談会601worksランチ会 お見積もり座談会
601worksランチ会 お見積もり座談会
 
Cloud garage使って ECサイトの構築
Cloud garage使って ECサイトの構築Cloud garage使って ECサイトの構築
Cloud garage使って ECサイトの構築
 
Welcart にStripe決済を追加するプラグイン作った! 〜 Stripe on welcart
Welcart にStripe決済を追加するプラグイン作った! 〜 Stripe on welcartWelcart にStripe決済を追加するプラグイン作った! 〜 Stripe on welcart
Welcart にStripe決済を追加するプラグイン作った! 〜 Stripe on welcart
 
休みたいときに休める Time goes by プラグイン | WordBench倉敷
休みたいときに休める Time goes by プラグイン | WordBench倉敷休みたいときに休める Time goes by プラグイン | WordBench倉敷
休みたいときに休める Time goes by プラグイン | WordBench倉敷
 
効果的なブログの書き方 ~仕事につながるブログ術、3つのポイント~
効果的なブログの書き方 ~仕事につながるブログ術、3つのポイント~効果的なブログの書き方 ~仕事につながるブログ術、3つのポイント~
効果的なブログの書き方 ~仕事につながるブログ術、3つのポイント~
 

コメントスパム対策から始まったWordPress生活