CGI : url-encode : mod_rewrite : スラッシュ
昨日([id:lethevert:20070508:p3])の件だけど、スラッシュが入っているとダメみたい。
もう少し検討する。
-
-
- -
-
スラッシュはだめだった。
http://localhost:8090/view/sla%2Fsh
しかし、はてなやシャープはOKだった。
http://localhost:8090/view/ques%3Ftion http://localhost:8090/view/sha%23rp
-
-
- -
-
RewriteRuleを変えたら動作が変わった。
今は、下のようになっていたのだけれど、
RewriteRule ^(.*[^/])$ /${escape:$1}/ [R,L]
これによって、URLが
http://localhost:8090/view/ques%253Ftion/ http://localhost:8090/view/sha%2523rp/
のようになっていて、こうなっていたときには、OKだったが、
次のように変更すると、
RewriteRule ^(.*[^/])$ /$1/ [R,L]
はてなのほうが
http://localhost:8090/view/ques/?tion/
に変わってしまった
-
-
- -
-
もしかして、URLに書くときは、url-encodeを2重にかけてやらないと上手くいかないのだろうか?
-
-
- -
-
どうやらそうらしい。