5丁目通信(仮称)

とある5丁目で活動する還暦を過ぎたWebプログラマーの覚え書きです。それとかかってくる迷惑電話や、家業のアパート経営について。

baserCMSでスマートURLが使えなくなった話し。意味もわからずコピペしてはダメなのよね、という話し


お客さんからの連絡があって、サイトのリンクがすべてトップページになってしまうということだった。

サイトを見てみると、すべてのリンクが/index.phpに遷移している。このサイトは、数年前にbaserCMSで作成している(メンテナンス契約はしていない)。baserCMSのスマートURLが全滅している。おそらく、rewriteの設定がおかしくなっているということではないかと予想する。

baserCMSのスマートURLの.htaccessにあるrewiteの設定の

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]

の前にあるRewriteルールを一旦削除してみる。すると、正常にスマートURLが動いてリンクが有効になる。次に少しずつRewriteルールを削除しながら試してみる。すると以下の行だけを削除すると正常に動作することがわかった。

RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://[ドメイン]/$1 [R=301,L]

この設定はさくらインターネットでhttpでアクセスされたときにhttpsに遷移するようにおまじないで入れたものである。どこから拾ってきてコピペしたような覚えがある。

このサイトでもWordPressでも同じ現象が発生すると報告がある。何でもさくらインターネットのサーバーがアップデートされたおかげで、この設定が悪さするという話しである。

WordPressで構築されているサイトが突然トップページしか表示されなくなってしまったという不具合の解決策は「.htaccess」の見直しから

ドモドモコーポレーション

やはり、意味もわからずコピペするのはダメなのである。

著:大竹 龍史, 著:山本 道子
¥2,950 (2024/12/24 16:15時点 | Amazon調べ)
著:Piro, 編集:日経Linux
¥2,178 (2024/12/24 16:15時点 | Amazon調べ)
著:三宅 英明, 著:大角 祐介
¥2,970 (2024/12/24 16:15時点 | Amazon調べ)

それにしても、さくらインターネットのサーバーがアップデートしたせいで(アップデートしておかげでサーバーが快適になったことのほうが大きいけど)、作ったこちらが悪いようで、調査して改修してもお金にならなかった。メンテナンス契約していないと、小さなシステム下請けではよくある話しである。最初からお金が出ないなら断ってしまうことのありだけど、仏心で話しを聞いて対応してしまうのは悪いことなのかな。

ひとり言

baserCMSは、自身のアップデートを管理画面からできるようにしてくれないかな。サイトのアップデートがめんどくさい。これだからWordPressをおすすめしてしまう。