▲TOPへ戻る

URLの正規化、書き換えとロリポップでのリダイレクト301の書き方

ロリポップ

はじめに

このページを立ち上げて早2年がたとうとしています。 コロナ禍で約2か月のロックダウン。その中でプログラミングに出会い、ゼロからスタート。 ググりまくって、ここまでやって来ました。

最初の半年はほとんど誰も見に来てくれない状態でしたが、1年たったころから、 ちょこちょこアクセス数が伸び始め、今現在、多い時で330pvほどです。

しかし、まだまだ少ないので、原因を調べたところ、ページを正規化してないことがわかりました。 http://でも、https://でもページにアクセスでき、 ページに対する評価が分散されるとのこと。つまり、http://xxx.comのページに 100人、https://xxx.comのページに100人アクセスしたとしたら、本当なら200人 のアクセスがあったはずなのに、分散され、ページの評価が半減するというわけです。 そりゃ困る!

というわけで、一からディレクトリを考え直し、ページの評価を引き継げるように、301でリダイレクトできるようにしました。

301と302の違い

301恒久的にページを変更する時に使います。

302一時的にページを変更する時に使います。

とりあえず、キャッシュが強く残るため、302で記述し、正常に動作したら、301に切り替える方がいいらしいです。

htaccessの書き方

今回は、ロリポップ での書き方を紹介します。ほかのサーバーでは記述が異なるかもしれないので注意。

ロリポップの公式ページのリンクボタンから確認してください。

httpsに統一

<IfModule mod_rewrite.c>
RewriteEngine On

# httpsに統一
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
# 一行開けておく
</IfModule>

最後のindex.html/index.phpを非表示

<IfModule mod_rewrite.c>
RewriteEngine On

# 最後のindex.html/index.phpを非表示
RewriteCond %{THE_REQUEST} ^.*/index.(html|php)
RewriteRule ^(.*)index.(html|php)$ https://%{HTTP_HOST}/$1 [R=301,L]
# 一行開けておく          
</IfModule>

ページ単位での変更

この部分はホームページよってURLが変わるので、必要な部分を書き換えてください。

基本は、 RewriteRule ^旧URLの相対パス$ 新URLの絶対パス [L,R=301]

<IfModule mod_rewrite.c>
RewriteEngine On

# ページ単位での変更
RewriteRule "^2PC/PC/PC 20200530.html$" https://gxy-life.com/2PC/javascript/1localsurver/ [L,R=301]
RewriteRule ^2PC/PC/PC20211016.html$ https://gxy-life.com/2PC/python/localsurver/ [L,R=301]
# 一行開けておく          
</IfModule>

URLに半角スペースがある場合

全く0からのホームページ作りだったので、最初の頃はURLに半角スペースが入ってました。 このような場合、"" ダブルクォーテーションでくくると正常に動作してくれます。

htaccessの設置

ロリポップのページから

  1. ロリポップの管理画面から、「ロリポップ!FTP」を選択

    redirect
  2. ドメインの一番上の階層にある「.htaccess」を開く。

    なければ、新規ファイルを作成してください。ファイル名は「.htaccess」です。

    redirect
  3. 現在の属性を「604」に。必要事項を書き込んだら「保存」

    redirect

FTPソフトを使ってアップロード

  1. 「メモ帳」または「vscode」で作成。
  2. メモ帳の場合は最初拡張子は「ファイル名.txt」とし、 書き込みが終了したら、ファイル名を「.htaccess」に書き換えます。
  3. 作成したものをドメインの第一階層にアップロードする。

まとめ

  1. ページが正規化されていないと、ページの評価が分散される。
  2. htaccessにリダイレクトを書く。
  3. URLに半角スペースがある場合、"" ダブルクォーテーションでくくる。
  4. 作成した「.htaccess」を第一階層にアップロードする。

こんな記事も読まれています。

profile

パソコン好きなガオ

コロナ禍によるステイホームを機にプログラミングを学ぶ。パソコンに関してはプロではないが、ちょっと詳しい程度。

パソコン

javascript

カメラ

ブログ