Consiglio la seguente impostazione:
1) Crea un dominio di terzo livello: demo.tuodominio.it (o quello che vuoi, basta che sia un dominio diverso).
2) Segui la procedura indicata qui:
http://www.zen-cart.it/faq/sviluppo-in- ... ubblicarlo ma al contrario, ovvero, se hai già il sito funzionante, parti da questo e copialo su demo.tuodominio.it
3) Database: ti consiglio di tenere separato anche il db.
4) Imposta una protezione con htpasswd sul sito demo. Questo è imperativo, per impedire a google di entrare nel sito di sviluppo e combinare casini. Non importa che il sito di sviluppo non sia linkato da nessuna parte, basta che usi chrome per entrare e google saprà che esiste (e verrà ad esplorarlo), quindi basta impedire l'accesso con user e pwd e sei a posto.
Perchè un dominio di terzo livello?
1) In questo modo, a differenza dell'utilizzo in locale o da altre parti, il server è lo stesso del sito in produzione e quindi a qualsiasi modifica risponderà nello stesso modo.
2) Se ti serve un htaccess con regole particolari (ad esempio per l'url rewriting), se usi una sottocartella del dominio principale per il sito di sviluppo, questo non funzionerà. Con un dominio di terzo livello i siti sono separati e quindi sei a posto.
Io uso questo approccio in vari siti ma a breve lo cambierò, però solo per un sito dove gli interventi sono continui e da parte di più persone.
L'evoluzione in questo caso sarà così:
1) Ambiente di produzione su cloud server
2) Ambiente di sviluppo e test separati ma su medesima istanza di cloud server distinta però da quella di produzione.
Ambiente di sviluppo e test distinti in quanto l'ambiente di sviluppo viene gestito con git e una volta che una modifica pare a posto e funzionante viene fatto il commit sull'ambiente di test, che a parte la modifica in corso di test è identico all'ambiente di produzione. In questo modo si testa solo l'impatto delle modifica che si sta per pubblicare senza andare ad interferire con altre modifiche in corso (indispensabile quando si lavora in diversi, ma in realtà a me capita anche in siti dove sono solo io a intervenire).
Testata la modifica, la si porta in produzione.
Ambiente di sviluppo e test si trovano su una istanza separata del cloud server per poter testare modifiche alla configurazione del server. Se fossero sulla stessa istanza, qualsiasi modifica di configurazione impatterebbe immediatamente in produzione senza poterla testare prima.
Poi in questo caso particolare ci sono altre cose che però non sono applicabili ad uno zen cart normale (uso di un terzo livello cookieless per i files statici (che faciliterà anche l'adozione di un cdn), uso di varnish, replica (nel senso di dump ad orari prestabiliti, non di replica vera e propria) del db sul nas aziendale per effettuare i report di analisi in ambiente diverso dalla produzione (tipicamente sono attività che consumano risorse e in questo caso non serve farle online)).