a-blogからの移行でのリンク切れ

久しぶりにみんぽすの記事を書いて、過去の記事を見ようとすると残念な index.php?ID=xxxx のようなリンク切れが多数ある事を見つけました。分かっていた事ですが...

とりあえずは対策しましたので、どうやったのかを書き残しておきます。

ファイル名の変更

index.php を ablogcms.php のようにリネームします。

.htaccess の変更

mod_rewitreの設定でindex.phpが動きなさいと書かれている部分を修正します。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (^|/)[^\./]*(/?$|(\.html|\.xml|\.js|\.json)$) index.php [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (^|/)[^\./]*(/?$|(\.html|\.xml|\.js|\.json)$) ablogcms.php [L]

のように修正します。

index.php を作成

私のブログは、カテゴリーを利用していないので、以下のような感じで a-blog cms 側で生成しているエントリーの形式(entry-xxx.html)に変換する事が可能です。301というステータスをつけてリダイレクトする事で、今のアドレスは新しい場所へ完全に移動したことを意味します。

<?php
	$url = "http://".$_SERVER['SERVER_NAME'];
	$jump = sprintf("%s/entry-%d.html",$url,$_GET['ID']);
	header ('HTTP/1.1 301 Moved Permanently');
	header( "Status: 301 Moved Permanently" );
	header("location: $jump");
	exit;
?>

カテゴリーが設定されている場合には、カテゴリーのディレクトリが必要になりますので、簡単にはできません。ご注意下さい。


関連記事

この記事のハッシュタグ から関連する記事を表示しています。

JavaScript ライブラリ htmx と a-blog cms は相性が良さそうだ

Chat GPT が書く a-blog cms の紹介ブログ記事

PhotoCollage.js を a-blog cms のブログテーマに実装してみた

2023年の a-blog cms を振り返って

エントリー新規投稿画面で次のエントリーコードっぽいものを placeholder に表示させるカスタマイズ

a-blog cms Training Camp 2023

最新記事

カテゴリー

アーカイブ

ハッシュタグ