特定のフォルダへのアクセスをPHPでメンテナンスフォルダへ飛ばす

サイトをメンテナンス状態にして、非表示にしてそれ以外の部分を直したいなんてことありませんか?

そんな時にPHPを使うことで、特定のページにアクセスした人をメンテナンスページへ飛ばしておくことが可能になります。

「header(‘location:’);」を使う

特定のフォルダにアクセスした時に、別のページへリダイレクトさせるには「header(’location:’);」を使います。

このようなフォルダ構造で、

「abc」というフォルダにアクセスした際に「def」フォルダへ飛ばしたい時に、このように書きます。

これをページの上部に置くことで、「abc」フォルダにアクセスすると「def」に飛ばされて、この記述がある限り「abc」フォルダにアクセスすることはできません。

$folder_path = $_SERVER['REQUEST_URI'];
if($folder_path == '/abc/'){
	header('location:/def/');
	exit();
}

これがどういう動きをするかというと、このようになります。

// ディレクトリパスを取得して、変数に入れる
$folder_path = $_SERVER['REQUEST_URI'];
// もしディレクトリパスが「/abc/」だった場合、
if($folder_path == '/abc/'){
	//「def」フォルダへ飛ばす
	header('location:/def/');
	exit();
}

コピペで使えるので、サイトをメンテナンス状態にしておきたい方はぜひお使いください!

コメントはこちらから

コメントは承認後に表示されます

未入力は匿名になります