これは有効で正しいですか?
RewriteRule ^myOldPage.html$ /index.php#info [R]
という部分に特に興味があり#info
ます。
これは有効で正しいですか?
RewriteRule ^myOldPage.html$ /index.php#info [R]
という部分に特に興味があり#info
ます。
はい。これは有効な 301 リダイレクトです ( HTTP 標準では、任意の有効な URI をリダイレクトとして提供できます)。
注意点: すべての検索エンジンがリダイレクトを気に入っているわけではありません。Google はアンカー タグの処理で素晴らしい仕事をしています (彼らはこれに関する特許も持っています) が、他の人はそれらを完全に無視します。それが問題でない限り、リダイレクトは技術的に有効です。
更新: mod_rewrite に問題がある場合は、NE (エスケープなし) フラグを試して、# 記号がエンコードされないようにしてください。
RewriteRule ^myOldPage.html$ /index.php#info [R,NE]
見た目は正しいのですが、うまくいかない気がします。
ブラウザは#anchorについて知る必要があります。サーバーとmod_rewriteはそれを無視するかもしれません。
それがうまくいかない場合、私はあなたが次のようなことをすることができると思います。
RewriteRule ^myOldPage.html$ /index.php?info=true [R]
次に、php出力で、アンカージャンプを実行するためのJavaScriptを出力します。