検索結果にindex.phpありのURLが掲載されてしまっているという方はおられないでしょうか?EC-CUBEは実はindex.phpありでもなしでもサイトにアクセスできるようになっています。

例えば、商品一覧ページはhttps://example.com/products/list でも、https://example.com/index.php/products/list でもアクセスすることが可能です。

この状況を放置するとindex.phpありのページとなしのページがGoogleサーチコンソールで重複コンテンツの指摘を受けるなど、仕様がSEO上良くない方向に作用します。

index.phpなしのURLへリダイレクトする

index.phpがついたページが検索結果にインデックスされてしまうとユーザーフレンドリーでないだけでなく、検索順位(SEO)にも良い影響を及ぼしません。

RewriteEngine Onの後にこのようなRewriteRuleを書き足すことでindex.phpを全て取り除くことができます。


RewriteRule ^index\.php/(.+)$ /$1 [R=301,L]

このカスタマイズはほぼ全サイト必要なものだと思いますが、あえてECキューブ本体で記載していないのは、mod_rewriteが使えないサーバーではindex.phpなしだと動作しなくなるためでしょうか。

なお、このカスタマイズはEC-CUBE3でも4でも同様に使用可能です。

日本発!ECオープンプラットフォーム「EC-CUBE」 EC-CUBEゴールドパートナー EC-CUBEは株式会社イーシーキューブの商標です

EC-CUBEに関するお問い合わせ


    [重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。

    EC-CUBEバージョンアップ