1

ドメインのルート ディレクトリに .htaccess ファイルと index.html ファイルがあります。この .htaccess ファイルに以下のコードがあります。

DirectorySlash Off

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*[^/])?$ /index.html [L]

ユーザーがディレクトリ URL にアクセスすると、ディレクトリ URL の末尾にスラッシュがあるかどうかに関係なく、index.html の内容が表示されることを願っています。だから私は上記のコードを持っています。

しかし、私には問題があります。存在しないディレクトリにアクセスしたとき。404 が表示されます。これは私が望んでいるものではありません。ユーザーがディレクトリの URL にアクセスすると、常に 200 が取得され、index.html の内容が表示されるようになることを願っています。上記の .htaccess ファイルのコードを編集して、この問題を解決するにはどうすればよいですか?

ところで。ユーザーを index.html ファイルにリダイレクトしないでください。

ありがとうございました!

4

1 に答える 1

7

カスタム 404 ページを作成し、「404page.php」などの名前を付けます。これを先頭に配置して、他のコンテンツをブラウザーに送信する前に、このページが 200 ステータスを送信することを確認します。

<?php
header("Status: 200 OK");
?>

次にErrorDocument 404 /404page.php、htaccess に入力します。

于 2012-09-06T01:11:46.917 に答える