下記は某ソニーペイメントサービス様の記事より引用したもの。
これは絶対にコピペして使わないでください!
ErrorDocument 503 /maintenance.html

< IfModule mod_rewrite.c >
RewriteEngine On
RewriteCond %{REQUEST URI} !=/maintenance.html
RewriteCond %{REMOTE_ADDR} !=xxx.xxx.xxx.xxx
RewriteRule ^.*$ - [R=503,L]
< /IfModule >

< IfModule mod_headers.c >
Header set Retry-After "Sun, 1 Apr 2018 7:00:00 GMT"
< /IfModule >


『「xxx.xxx.xxx.xxx」の部分は管理者のIPアドレスです』などと、いかにもコピペすれば使えますよー的に書かれていますが、鵜呑みにするとつまづきます。
もう、わざとやっているとしか思えない、罠が存在するのです。
まずはじめに、タグ開始文字の後ろとタグ終了文字の前にスペースが挿入されています。
これだけなら、まあ、単純なミスだなぁ、と思ってそのまま終わっていたと思う。
が、もう一つ悪質な罠が…。
それは「アンダースコアが空白になっている」です。
具体的には「REQUEST_URI」が「REQUEST URI」になっているのです。
これ、見た目ではわかりにくく、ついに間違いに気づくことができませんでした。。
そこで別サイトを参考に.htaccessを作り、事なきを得たのですが、、、
この正常稼働したものと、テキスト比較ツールを使って比較してもなお分かりにくく、その場では気づくことができず、他にも動作確認しなければならないので後回しにしていたのです。
んで、後日落ち着いてテキスト比較ツールで見ていると、どうやら前述の箇所が違っているらしい。
改めてテキストエディタで開いて良く見ると、「ここ空白になっとるやないかーい!」と、ようやく気づいたという次第。

もうね、こんな使えないものをあたかもコピペで使えますよ的に載せている企業なんて、信用できません。もし決済代行導入の機会がありました際には、今回の件、参考にさせていただきます。


もっとも、悪いのは動作確認を怠った私です!
私のような迂闊な人間に警鐘を鳴らすためにあえて罠を仕込んだのかもしれない…。
ただ、それを超大企業(のグループ企業)がやっていいものか、疑問ですが。。

うーむ、いつものことながら、なんだか尻窄み。。。