Let's deploy it!


Atomic

No performance hit


Must be able to serve two versions of the site concurrently!



Requests that begin on DocumentRoot A must finish on A


Set the DocumentRoot to symlink target!

Easy with nginx

    fastcgi_param DOCUMENT_ROOT $realpath_root
Apache

github.com/etsy/mod_realdoc


Avoid hardcoding full paths

Watch your include_path setting

incpath extension can resolve your include_path for you

https://github.com/etsy/incpath


Version all static assets

DB Schema changes need special care