www付きhttpsまたはwwwなしhttpsへ統一する.htaccess

サイトをSSL化するのが常識化しました。今のところLet’s EncryptによるSSL化に対応していないサーバー会社あるいはサーバーは、X2サーバー(エックスサーバー)とクイッカぐらいです(2019年4月22日現在)。

こういう時代遅れのサーバー会社はいずれ淘汰されていくものと思われます。

さて、SSL化したなら、URLもhttpsで始まるURLに統一した方がいいですね。httpの方にアクセスすると、ブラウザー上で警告を受けますので、訪問者側では不安が生じます。これは回避すべきだと思います。

ついでに、www付きかwwwなしかどちらかに統一した方がいいです。これは必須とは言えませんが、URLに二通りあると、不安に思う訪問者もいるでしょう。訪問者に安心感を与える上で、この点でもURLを統一しておくのは意味があると思います。なお、もし統一していない場合、検索上では、検索エンジン側がどちらかに勝手に決めて、表示しますので、現状、検索に関してはあまり心配はいりません。

そこで、場合に分けて、.htaccessのディレクティブを載せておきます。

下記は、SSLアクセラレーターを使っているサーバーの場合です。

1)www付きで、httpsに統一する場合

#www付き、httpsへ統一
RewriteEngine On
RewriteCond %{HTTP_HOST} ^hotaruweblog¥.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.hotaruweblog.com/$1 [R=301,L]

2)wwwなしで、httpsに統一する場合

#www付き、httpsへ統一
RewriteEngine
≫続きを読む

Seesaaブログでサイドバーにリンクを貼る方法

Seesaaブログではサイドバーにリンクを貼る仕組みが用意されていませんので、自分で作る必要があります。

まず、管理画面から「デザイン」→「PC」→「コンテンツ」と進みます。

左端に「自由形式」というパーツがあるので、これをリンクを貼りたい場所にドラッグ&ドロップで持って行きます。右のサイドバーでも左のサイドバーでも、あるいは、奇想天外な記事下でもいいです(笑)。

歯車マークをクリックすると、パーツの中に表示したいコードが書けるエリアが「自由形式」という名称で出ますので、そこにHTMLで書きます。実際にリンクだけ書くと、みっともない形になりますので、自分でCSSを書いて調整するのも一手です。しかし、面倒なので、すでにテンプレートの中に書かれているCSSをそのまま利用するのが最善です。保証の限りではありませんが、これならテンプレートを変えても大丈夫かもしれません。

具体的にはこんな感じです。

<div class="sidetitle">リンク</div>
<div class="side"><a href="https://hotaruweblog.com/" target="_blank">ほたるのブログ</a></div>

「名前」の所に「リンク」などと書いておきます。これは表には出ませんので、わかりやすい名称を入れておけばいいです。表に出るのは、自由形式内に書かれたものだけです。

ポイントは、パーツの名称部分のクラスが「sidetitle」でパーツのコンテンツ部分が「side」ということです。

なお、リンクを記事下に載せたい場合は、上記のクラスは使えませんので、自分で適当なCSSを書いて調整することになります。

やってみるとおもしろいかもしれません。

なお、スマホやフィーチャーフォンの方にも同様にリンクを貼ることを忘れないようにしましょう。「デザイン」→「スマートフォン」→「コンテンツ」などと進みます。場所は記事下やヘッダーがよいと思います。

フォントサイズを指定しないと文字が小さくなる様です。remで指定します。別にpxやem等でもいいのですが、どうやらSeesaaブログではremを使っている様なので、rem(「root em」の略)にしておけばわかりやすいかもしれません。

スマートフォンの場合のコードの例

<div style="margin-top:20px;margin-bottom:20px;font-size:16rem;">リンク</div>
<div
≫続きを読む

海外からのアクセスを遮断する方法

海外からのアクセスはスパムが多いので、海外在住の日本人に見せる必要がないのなら、海外からのアクセスは全て遮断するのがいいです。私はいつもそうしています。

方法は、.htaccessに日本のIPアドレスを並べて、それだけを許可すればいいです。日本のIPアドレスはこちらで手に入ります。

ただ、これをそのまま使うと、検索エンジンのクローラーまで拒否してしまうので、検索エンジンのクローラーだけは許可する必要があります。

それにはこう書きます。

#検索エンジンのユーザーエージェントを列挙し、ラベルを付ける。
SetEnvIf User-Agent "Googlebot" allow_ua
SetEnvIf User-Agent "bingbot" allow_ua
SetEnvIf User-Agent
≫続きを読む

画像などへの直リンクによる外部呼び出しを禁止する方法

画像などに直リンクを貼り、自分のサイトの外部から呼び出すということをする人がいます。これはマナー違反です。放置すると、自分のサーバーのリソースを消耗し、困ったことになります。これに対する対策としては、これをこちらのサーバー側で禁止するしかありません。

禁止するには、下記記述の.htaccessを画像ファイルを置いているディレクトリーに設置します。下記のような.htaccess以外では禁止する方法がありません。

自分のサイトを訪問している人のみ許可する場合

自分のサイト:abc.com

SetEnvIf Referer "^http://www\.abc\.com" allow_ref
SetEnvIf Referer "^http://abc\.com" allow_ref
SetEnvIf Referer "^https://www\.abc\.com" allow_ref
SetEnvIf
≫続きを読む

UTF-8の.htaccessによりエラーが発生する場合

.htaccessで500のエラー(Internal Server Error)が発生するのはよくあることですが、大抵は、どこか記述に間違いがある場合です。エラーログを見ると、ある程度、原因がわかりますが、エラーログを見ることができないと、よく見直すか、推測するしかありません。(さっさと要点を見たい場合は ≫続きを読む