■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

インストールしたディレクトリに、スラッシュなしでアクセスすると400エラーになる

ladybugkkk > インストールしたディレクトリに、スラッシュなしでアクセスすると400エラーになる @ 2013/10/7 11:51
こんにちは。はじめて実サイトでBaser CMSを使ってみました。
サイト構築は大体出来たのですが、URLの正規化のところで悩んでいます。

構成としては、今回、
http://www.example.com/baser/
という感じでサブディレクトリにBaser CMSをインストールしました。

http://www.example.com/
直下には静的HTMLで別のサイトが公開されています。

問題は、
http://www.example.com/baser
と、インストールディレクトリにスラッシュなしでアクセスすると、サーバ側が400エラーを返してしまうことです。

http://www.example.com/baser
にアクセスされた場合、
http://www.example.com/baser/
にリライトまたはリダイレクトするようにしたいのですが、どのようにすれば良いかお分かりの方がいればアドバイスお願いします。

※301リダイレクトの記述を /.htaccess、/baser/.htaccess の2箇所で試しましたが変わらずでした。

---------------------------
baserCMS環境

レンタルサーバ: CPI ACE01
スマートURL: ON
設置フォルダ: /usr/home/aa******/html/baser/
セーフモード:Off
データベース: MySQL
baserCMSバージョン: 2.1.1
CakePHPバージョン: 1.2.12
goichi > Re: インストールしたディレクトリに、スラッシュなしでアクセスすると400エラーになる @ 2013/10/7 12:56
こんにちは(^^

引用:
http://www.example.com/baser/
という感じでサブディレクトリにBaser CMSをインストールしました。

ということですので、baserCMSは「baser」フォルダに入っていますよね。ですので、
http://www.example.com/baser
にアクセスしても、そのままでは、おっしゃる通り404が出ると思います。

アイディアとしては、お試しになった通り、
http://www.example.com/ 直下に「.htaccess」を設置するなどして、
baserCMSがインストールされているフォルダ「baser」まで転送をかけるのが良さそうです。

ただし、.htaccess関係はレンタルサーバーによって、
使えない記述もあると思いますし、試したけど動かないという事でしたら
CPIに問い合わせるのが一番良いように思います。
(たぶん、baserCMSの問題というより、
.htaccessの書き方の問題になっていくだろうと思うので、ここでは回答が付きにくいかな、と思います)

直接の回答でなくて申し訳ないのですが、
参考までい回答をつけておきます。


ladybugkkk > Re: インストールしたディレクトリに、スラッシュなしでアクセスすると400エラーになる @ 2013/10/8 10:10
回答ありがとうございます。

> http://www.example.com/baser
> にアクセスしても、そのままでは、おっしゃる通り404が出ると思います。

いえ404ではなく、400エラーなんです。
なので、通常のリダイレクトが効かず困っているわけです。。。(>_<)

↓こちらで、2010/1/6にbluemさまが報告されている状況に似ているような気がします。
http://forum.basercms.net/modules/newbb/viewtopic.php?topic_id=4&forum=2

引用:
(1)トップページのURLで次の現象

  http://{SERVER_NAME}/v151b
   → 400 bad request


しかし、結構前のスレッドですし、直接関係あるのかどうか。。。
今回問題のサーバはCPIなのですが、他のサーバではサブディレクトリにインストールしても、ちゃんとスラッシュありでもなしでも表示してくれていますか??
goichi > Re: インストールしたディレクトリに、スラッシュなしでアクセスすると400エラーになる @ 2013/10/8 15:37
こんにちは(^^

引用:
他のサーバではサブディレクトリにインストールしても、ちゃんとスラッシュありでもなしでも表示してくれていますか??

どうでしょうか・・・、そもそもそういう仕様ではないような気がします。
あくまでもサブフォルダ内にインストールしたのであれば、URLでサブフォルダ内にアクセスするように「/」をつけるか、そうでなければ.htaccessで上手にさばくしかないと思います。


goichi > Re: インストールしたディレクトリに、スラッシュなしでアクセスすると400エラーになる @ 2013/10/8 15:45
すみません、エラーの件について、付け加えるのを忘れました。。。

400エラーの件ですが、単純にURLの形式が不正なだけだと思います。(拡張子もスラッシュもない)
(400番台のエラーについては、検索すると色々と出てくると思います。
詳しくはそちらをご覧ください)

スラッシュがなくてもURLが動くのは、baserCMS内部などルーティングが効いている場所
(今回は「baser」フォルダ内)になると思います。
普通の場所ではエラーになります。
ladybugkkk > Re: インストールしたディレクトリに、スラッシュなしでアクセスすると400エラーになる @ 2013/10/9 17:32
goichiさん

情報ありがとうございます!
やはり、1つ上の階層で何かしら処理をすることになりそうですね。
おそらくリダイレクトだとダメなので、mod_rewriteを試すことになりそうです。

もう少し試行錯誤してみて、ご報告します!
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
41 人のユーザが現在オンラインです。 (39 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 41