残念ながら、すべてのURLには.html
という接尾辞が付いています。Magentoのインストールでは、これをCMSで変更できますが、残念ながら.html
という接尾辞Googleで良いランキングを持っている。非.html
にリダイレクトする必要があります。リダイレクトURLから.htmlを削除します
したがって、このサイトを一から再構築しているため、新しいサイトには同じURLがありますが、拡張子は.htmlではありません。今
- です:
www.example.de/cool-shoes.html
- は次のようになります。
www.example.de/cool-shoes
のでwww.example.de/cool-shoes.html
はもはや存在しないだろう、と私は運での.htaccessでリダイレクトをしようとしてきました。
私がこれまで試した:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule (.*)index\.html$ /$1 [R=301,L]
をして:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html
が、動作するように...任意のアイデア思えないのですか?
こんにちは、ちょうど私の疑いをクリアするために、このルールは何をしていますか?最初のパラメータがリクエストから受け取る式であり、2番目のパラメータがApacheに送信する式であることは納得されていませんか?それらを切り替える必要があります - > ^(。*)$ 1.html – alexserver
このルールは '.html'を削除しています。最初の部分は一致している部分です: '.html'を持つURL。 '$ 1'はマッチの括弧内にあるもので、' .html'以外のものです。 –
'.html'がURLの最後に来るように' $ 'を追加します:' redirectMatch 301 ^(。*)\。html $ $ 1' –