0

サイトの一部をあるサブ フォルダーから別のサブ フォルダーに移動しました。このフォルダー内のファイルの htaccess に永続的なリダイレクト (301) を配置したい (ファイル名も変更されているものがあるため、フォルダー全体に対して 1 つのルールを設定することはできません)。これが私が試していることです

RewriteRule ^search/tutorial-search.html$ db/tutorial.php [R=301]

ただし、これは機能しません。古い URL を入力すると、404 応答が返されます。機能する年齢のルールがあったので、これは奇妙だと思います。これは次のようになります。

RewriteRule ^search/tutorial-search.html$ search/tutorial-search.php

大きな違いは本当にわかりません。私も(特に)以下を試しましたが、どちらも機能しません

RewriteRule ^search/tutorial-search.html$ db/tutorial.php

これが失敗する原因は正確には何ですか?これらすべてを htaccess ファイルのまったく同じ行に配置するようにします。別のフォルダに書き換えているからでしょうか。ありがとう :)

4

1 に答える 1

0

リダイレクト時にapacheがURLパスとファイルパスを間違える可能性があるため、リライトターゲットに先頭のスラッシュを追加してみてください。

RewriteRule ^search/tutorial-search.html$ /db/tutorial.php [R=301]
于 2012-09-24T18:27:41.670 に答える