.htaccess リダイレクトがない場合でも、存在しないファイルにアクセスすると、サイトが自動的に別の URL にリダイレクトされるのはなぜですか?
P粉198670603
2023-08-30 21:32:54
<p>数日間これに取り組んできました...</p>
<p>存在しない .jpg の URL にアクセスすると、サイトは閉じたファイルにリダイレクトします (1 文字の違いがあるようです)。たとえば、12345.jpg は存在するが 1234.jpg が存在しない場合、1234.jpg は 12345.jpg にリダイレクトされます。 </p>
<p>この Web サイトは Wordpress または他の同様のプラットフォームでホストされていません。既存のコードを取得して開発しました。 Filezilla を通じてすべてのファイルとディレクトリにアクセスできます。 .htaccess を検索しましたが、どれにもリダイレクト行はありません。 .htaccessも削除してみましたが、同じ問題がありました。 </p>
<p>問題の原因が見つからない場合、ローカルでリダイレクトの発生を防ぐコードの書き方をご存知の方もいらっしゃるのではないかと思いました。 </p>
<p>ご協力いただき、誠にありがとうございました。 </p>
サーバー設定で
mod_speling
a> (l
) が有効になっているようです。mod_speling
存在しないファイルをリクエストする場合はディレクトリをスキャンします。 「近い一致」(例: 1 文字の違い) がある場合、ファイルに対して 301 リダイレクトが発行されます。 (ただし、「近い一致」が複数ある場合は、利用可能なファイルのリストがユーザーに表示されます。)次のコマンドを使用して、
リーリー.htaccess
でこの動作を無効にできます:このオプションはデフォルトでは無効になっているため、サーバー構成の他の場所で明示的に有効にする必要があります。 (アクセス権がある場合は、最初から有効にしないことをお勧めします。)
301 (永続) リダイレクトが発行されるため、テストする前にブラウザ (および中間) キャッシュをクリアする必要があることに注意してください。
余談:
CheckCaseOnly
ディレクティブ (mod_speling の一部) は、スペル修正を case のみに制限するためによく使用されます。大文字と小文字を区別しない URL を有効にします。