2017-04-06 5 views
1

ちょっとサブディレクトリにリンクしようとしていて、そのディレクトリにindex.phpがありますが、404が見つかりませんでした。ファイル構造はこれです:私はmysite.com/subfolderに行くとき、私はそこにindex.phpをロードしたいサブディレクトリ(.htaccess)のindex.phpを探しているURL 404s

| index.php 
| .htaccess 
| subfolder 
    | index.php 
    | about.php 

。問題が私の.htaccessファイルであることはわかっています。なぜなら、URLを削除するとURLが機能するからです。ここでは.htaccessファイル内のコードは次のとおりです。

Options +MultiViews 

# Remove file extensions from page names 

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 

# Disable Index Listing 
Options -Indexes 

私の推測では、私は、ファイルの拡張子を削除していますので、サーバはmysite/subfolder.phpを探しているということであり、それはそれ404エラーので、見つけることができません。私は.htaccessファイルには新しく、まだ彼らは私には非常にわかりません。オンラインでの検索には多くのコードがありますが、何がどのように機能するかは説明していません。この問題を解決する方法と修正がうまくいく理由については、どんなアイデアも参考になります。

答えて

1

MultiViewsオプションを有効にする場合は、拡張機能を処理するための書き換えルールは必要ありません。

ちょうどあなたの.htaccessファイルに次の行に保つ:

Options +MultiViews 
DirectorySlash On 

DirectoryIndex index.php 

を他のすべてを削除します。次に、mysite.com/subfolder/ URLでテストする

関連する問題