В проекте будет задействовано 2 человека. Может и больше, но это будет уже через месяца 4, тогда и сервер сменится. Тоже уже задумался плюнуть и использовать SSH. Ибо с апачем тоже беда… либо я идиот, либо актуального туториала пошагового нету. На следующей неделе уже буду разбираться.
Проблема скорее не с настройками nginx-а а с fast-cgi сервером. по всех туториалах говорится мол «установить fcgiwrap» и потом сразу, опустив настройку и т.д. предлагается перенаправлять запросы на 127.0.0.1:9001. Хотя этот порт может быть занят каким-нибудь пулом php-fpm или же еще чем.
Оптимизацией потом заняться можно. Касательно $(this) — тут да, стоило бы закешировать. Хотя по сути можно передать this в append у таргета и тогда вызов был бы один.
А что до parents — ну тут да, конкретно в этом случае смысла применять parents нету. Просто что-то под вечер мозг тормозит.
Задача реализовать это в виде кодека/драйвера. Цель — научиться использовать системные вызовы на как можно более низком уровне для реализации этой задачи. Пользоваться этой штуковиной никто не будет.
По поводу вашего последнего тезиса, обычно какие-то специфичные фичи, которых нету в браузерах, делают через $.support, модернизер ну или, например если нам надо проверить есть ли у браузера поддержка pushState, то просто if( window.history.pushState).
Но буквально недавно у меня была проблема с методом jQuery animate — scrollTop. в IE7 постоянно валились скрипты изза ошибки на уровне jQuery, и тут try/catch пришли на помощь.