[Codeigniter-users] CIで携帯用サイト構築時のmod_rewriteの設定

Back to archive index

Kenji kenji****@club*****
2008年 12月 27日 (土) 08:57:29 JST


Kenji です。


On Fri, 26 Dec 2008 23:52:29 +0900
supipiitopalo <supip****@gmail*****> wrote:

> 携帯用のサイトを作っていてmod_rewriteの設定が分からなくなってしまいました。
> 
> PC用のURLが http://example.jp/pc (pcというコントローラがあります)というURLで動いています。

これ、pc はディレクトリでなくコントローラですか?
つまり、http://example.jp/index.php/pc でアクセス可能という状態。

そうでしたら、ドキュメントルートの htaccess で /mobi へのアクセスは
index.php へ渡さないように設定する必要があるかと思います。


> 私なりにいろいろ考えた結果、携帯版のURLを http://example.jp/mobi
> (mobiはディレクトリでPCからのアクセスをIPアドレスで拒否するつもりです)
> にしてみることにしました。携帯から/pcにアクセスした場合は/mobi にリダイレクトする設定をhtaccessに追加しました。
> 
> mobiディレクトリに、codeigniterを新しく用意し携帯用に必要なカスタマイズを別に実装できたらいいなと思いました。
> mobi内で開発を始めたのですが、リンクやPOST先のURL設定が分からなくなってしまいました。
> 
> /mobi のhtaccessは下記の通りです。
> 
> RewriteEngine on
> RewriteCond $1 !^(index\.php|css|user_guide|.+\.gif$|.+\.jpg$|.+\.png$|.+\.js$)
> RewriteRule ^(.*)$ /mobile/index.php/$1 [L]

RewriteRule ^(.*)$ /mobi/index.php/$1 [L]
ではないでしょうか?

> この設定でPOSTした時に下記のようなリクエストになってしまいました。

ここでの POSTした時というのは、どういう意味でしょうか?
ページに書かれている URL がそうだという意味でしょうか?
もし、そうでしたら、ページの view ファイルの記述か
config.php の site_url の設定が正しくないということになります。


> http://example.jp/mobi/index.php/pc/post
> 
> URLのindex.phpを無くして、http://example.jp/mobi/pc/post にしたいのですがどのように設定していいのか分かりません。
> 
> すみませんが、教えてください。



Codeigniter-users メーリングリストの案内
Back to archive index