#ruby-on-rails #passenger
#ruby-on-rails #пассажир
Вопрос:
Я запускаю приложение (на Dreamhost), которое отлично работает в среде разработки, но не работает должным образом на производстве. Я попытался устранить все возможные различия: например, используя тот же экземпляр mysql.
Единственное, что я вижу, это то, что параметры моего запроса, похоже, закодированы странно.
Вот как они выглядят в экземпляре разработки:
Этот поиск:
GET "/individuals?utf8=✓amp;search[firstname_like]=amp;search[lastname_like]=jonesamp;commit=Search"
Выдает эти параметры:
Parameters: {"utf8"=>"✓", "search"=>{"firstname_like"=>"", "lastname_like"=>"jones"}, "commit"=>"Search"}
В производственном экземпляре:
GET "/individuals/?utf8=%E2%9C%93amp;search%5Bfirstname_like%5D=amp;search%5Blastname_like%5D=jonesamp;commit=Search"
Выдает эти параметры:
Parameters: {"commit"=>"Search", "search[firstname_like]"=>"", "utf8"=>"✓", "search[lastname_like]"=>"jones"}
Кажется, что в строке запроса есть дополнительные «25».
Есть идеи, что дает?
Комментарии:
1. Похоже, что по какой-то причине они дважды закодированы. Возможно, вам захочется сравнить версии используемых вами gems.
Ответ №1:
Оказывается, это была проблема с Apache «mod_rewrite». У меня был файл .htaccess из html5boilerplate, который вызывал проблему.