2011-01-17 10 views
0

私のサイトの領域には、6桁のコードに基づいて一意の名前を持つ一連のサブフォルダを持つフォルダ(「テスト」と呼ぶ)があります。私は、現在のように、非常に似た既存のURLにリダイレクトするのではなく、常に404エラーを返す既存のURLとは異なる1つの文字だけである、そのフォルダへの不正なクエリを欲しい。特定のフォルダから厳密なURL解釈を強制する方法はありますか?

EG:場合... /テスト/ abc001/sample.txtのが存在し、かつ... /テスト/ abc002/sample.txtのが、私はむしろ404を返すように2番目のクエリを必要としません。最初のURLへのリダイレクトよりも

これは.htaccessファイルで行うことができますか?

+1

Apacheがこれをしていると思いますが、私はモジュールの名前を忘れていましたが、1つか2つの文字列を間違って入力してしまった場合、ユーザを再描画するものがあります。 – Tobias

答えて

0

upvoteはPekkaに行きますが、私は実際に彼の答えを正しいものとして受け入れることができません。なぜなら、少なくともの私のの場合です。

CheckSpelling off 

ペッカの回答が同様に直面して、他のユーザーのための正しいことではないだろうと言っているわけではない:私は彼の解決策の下にコメントとして、正しい答えは、このディレクティブを使用するように私に指示し、私のホスティング会社から提供されました問題。 Apache reference for mod_spelingは、CheckSpellingがデフォルトでオフであると述べています。そのため、私のホスティング会社は最初にそのデフォルトを明確に上書きしています。

とにかく、助けてくれた人のおかげです。

2

このディレクティブ

Options -MultiViews 

はあなたが記述動作をオフにする必要があります。

背景here(「Multiviews」セクションを検索)とOptionsの指示hereで参照してください。

+0

それは私が意味するものです! – Tobias

+0

ええと...私は、その行だけで** test **フォルダに.htaccessファイルを追加しようとしましたが、何の違いもないようです。 2番目の(存在しない)URLへのリクエストは、まだ最初のURLにリダイレクトされています。この設定には時間がかかりますか? – Antagony

+0

@Antagony no、設定は直ちに有効になります。うーん、これにはいくつかの理由があります。中央設定ファイルで '.htaccess'ファイルでオプションを無効にすることはできません。パスに沿って他の場所に他のhtaccessルールがないことは確かですか? –

関連する問題