Hallo Jan,
Am 30.07.2008 um 09:47 schrieb Jan Roesner:
nachdem ich mit einem Projekt von lighttpd auf die Kombination Apache
+Mongrel+Capistrano umgestiegen bin, habe ich ein lustiges Problem mit
URL's , dass mir seit einigen Stunden etwas Kopfschmerzen macht.
damit habe ich mich voriges Jahr auch mal zeitaufwändig
rumgeschlagen. ;)
Ich habe da so ein Ding mit Tags, die manchmal komische Zeichen
enthalten können, z.B. "geo:long=13.41644":
http://www.uninformation.org/tag/geo%253Along=13%252E41644
Und es kam genau zu dem Phänomen, was Du beschreibst.
Ich habe das dann so gelöst:
Bei der Darstellung (obiges Bsp., rechts bei den "verwandten Tags")
formatiere ich die Links mit einem Helper, der den Tag in "tag" für
die Darstellung als link_to-Parameter aufbereitet:
def tag_encode(tag)
URI.escape(tag,/[\.:]/)
end
Im Template steht dann:
link_to tag, tag_path(tag_encode(tag)) usw.
Im Controller dekodiere ich das dann wieder, "params[:id]" enthält den
Tag:
URI.unescape(params[:id])
Das funktioniert dann mit Apache und Mongrel. Ich weiß nicht mehr
genau, was die Ursache für das unterschiedliche Verhalten mit "reinem"
Mongrel-Entwicklungsserver und der Apache/Mongrel-Kombination auf dem
Live-Server ist, es hat irgendwas mit der Art und Weise zu tun, wie
mod_proxy "komische Zeichen" in URL behandelt.
viele Grüße
Ralf
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug