0

質問したいのですが、書き換えルールが存在しない場合に、httacces 条件で自動リダイレクトする方法はありますか?

例えば。

次のルールがあります。

 RewriteRule ^/index/$ index.php
 RewriteRule ^/error-404/$ 404.php
 ErrorDocument 404 /error-404/

誰かが index/something-added-by-user/ のようなアドレスにアクセスしようとすると、404 ページが表示されますが、URL は「index/something-added-by-user/」のままです。ユーザーが入力したその URL から URL "error-404/" に自動的にリダイレクトする方法はありますか? したがって、上記のように URL を入力すると、404 ページの URL を含む 404 ページが表示されます。

4

1 に答える 1

0

これは、次のルールを使用して実行できます。

# not a real dir
RewriteCond %{REQUEST_FILENAME} !-d
# not a real file
RewriteCond %{REQUEST_FILENAME} !-f
# not a real link
RewriteCond %{REQUEST_FILENAME} !-l
# redirect it to 404.php
RewriteRule ^ /404.php [R,L]

ただし、ブラウザは 404 ではなく 200 ステータスを取得しないことに注意してください。

于 2013-07-23T16:55:14.190 に答える