人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

apache2で

RewriteEngine On
RewriteRule index.shtml index.html
RewriteRule index.shtm index.html

としてindex.shtmlにアクセスすると


Bad request!
Your browser (or proxy) sent a request that this server could not understand.

とエラーが出るのですが、どんな原因が考えられるでしょうか?

●質問者: searchengine
●カテゴリ:コンピュータ
✍キーワード:HTML INDEX ON Proxy アクセス
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● かほちゅう
●20ポイント

http://maborosi.kobe-du.ac.jp/sugiura/homep/rewrite/rewrite1.htm

RewriteRuleの表記誤りだと思います。

以下は一例です。

RewriteEngine On

RewriteBase /var/www/html

RewriteRule index¥.html index.shtml [L]

RewriteRule index¥.htm index.shtml [L]


2 ● aki73ix
●15ポイント

http://dmoz.org/World/Japanese/404help.html

Robozillaのエラーにはどう対処すべきか。

そのエラーは 400エラーです

http://juntake.zive.net/server/no15/no15.html

ログをチェックしてみないとなんともいえないそうですが、サーバー側のドメイン設定などに誤りがあるときにも出るようです


3 ● koi911
●10ポイント

http://localhost.localdomain/mailman/listinfo

URLはダミーです。

RewriteRule index.shtml index.html

RewriteRule index.shtm index.html

としているのですが、1行目と2行目にindex.htmlが含まれています。

2行目のindex.htmlをindex.htmに変更したらどうでしょうか?


4 ● hempire
●0ポイント

http://japache.infoscience.co.jp/rewriteguide

Apache URL Rewriting Guide

URLRewriteの設定はドメイン以降のパスを正確に表記しなければ動作しなかった経験があります。

仮に

http://www.abc.com/index.shtml

などのページを

http://www.abc.com/index.html

に誘導したい場合には、

RewriteEngine On

RewriteRule ^/index.shtml /index.html

RewriteRule ^/index.shtm /index.html

でいけるはずです。


5 ● hempire
●100ポイント

http://japache.infoscience.co.jp/rewriteguide/

Apache URL Rewriting Guide

URLRewriteはドメイン以下を正確に記述する必要があります。今のままではどの階層のindex.shtmlを指しているのか分からないので次のように書き換えてみては如何でしょう。

RewriteEngine On

RewriteRule ^/index.shtml /index.html

RewriteRule ^/index.shtm /index.html

◎質問者からの返答

hempireさん、ありがとうございました。

RewriteRule ^/index.shtml /index.html

で動きました。

RewriteRule index.shtml /index.html

でも一応動いたので、私の質問では、Rewrite先の指定が良くなかったようです。

また、

RewriteRule index.shtml /index.html

では、全階層の index.shtml がトップのindex.html にリライトされてしまうので、トップの index.shtml のみを index.html にリライトしたいときは、hempireさんのおっしゃるとおり

RewriteRule ^/index.shtml /index.html

と書かなければならないようです。

そのほかの皆さんもありがとうございました。

回答を読み進めていった後で戻ってコメントを書く方法がわからなかったので、この欄を借りてお礼します。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ