これはhttpd.confか.htaccessいずれかに記述しておけば大丈夫だと思います。
http://httpd.apache.org/docs-2.0/mod/core.html#errordocument
core - Apache HTTP Server
httpd.confのErrorDocumentディレクティブの設定例ですが、いかがでしょうか?
<Directory />
<Files ~ ”¥.(php)$”>
ErrorDocument 404 /index.php
</Files>
</Directory>
ありがとうございます!
ErrorDocument
おっと、ろくに読まずに回答してすみません。
Redirect /hoge.php http://hoge.net/index.php
と記述すれば、有無を言わさずhttp://hoge.net/index.phpに飛びます。
もし、単にファイルがない場合http://hoge.net/index.phpに飛ばしたいのであれば、
のように、独自の404エラードキュメントを用意し、そこで上記を参考に
<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1” />
<meta HTTP-EQUIV=”Refresh” CONTENT=”0;URL=http://hoge.net/index.php”>
等と記述してやればよいかと思います。尚、独自404ドキュメントの作成は通常のHP作成と同じです。
http://wago.nobody.jp/www/etc/err/
Apache サーバーステータス別 エラーページ作成|Windows2000とApache2
但し、もし特定のファイルがあるかないかを判別させて飛ばしたいというご希望であれば、cgiを使って制御するしかないと思います。
ご承知とは思いますが、参考までにこちらも…
http://www5.plala.or.jp/vaio0630/apache/apache_unix.htm
UNIX版Apacheの設定ファイル
httpd.confの設定内容について書かれています。
ありがとうございます!
独自の404エラードキュメント
http://www.hatena.ne.jp/1117784657
人力検索はてな - apache2.0系でhttp://hoge.net/hoge.phpというファイルが存在しないなら、http://hoge.net/index.phpに飛ばす、という設定の仕方を教えてください。..
kunitzさんの質問は結構面白いというか、逆に勉強になります。
httpd.confのDirectoryIndexを
DirectoryIndex hoge.php index.php
とすれば良い気がします。順を追って行きます。
ただ質問内容からですとhttp://hoge.net/hoge.phpと直打ち
した場合にindex.phpに飛んで欲しいとも読めます。
そうすると、Onoderaさんやburiburimegurinさんが書かれている様に
エラードキュメントとしてindex.phpを表示させる(404等ですね)方法
があると思います。コレを使うと404の場合全部index.phpを表示します。
Onoderaさんが言われている様なCGIを1枚噛ますのが良いかなと思います。
またhttpd.confを設定される場合は全体的に設定されますので
ループしない様にお気を付け下さい。
ありがとうございます!
DirectoryIndex hoge.php index.php
エラードキュメントとして
ありがとうございます!
目的別Apacheの設定
どの設定を記述すればよいでしょう?