Per rispondere direttamente alle tue domande - puoi conservare tali file altrove o puoi configurare apache per negare l'accesso ad essi - negare l'accesso a * .bak è relativamente semplice.
Apache, a meno che non sia configurato per non farlo (come indicato da MH sopra), genererà e visualizzerà un elenco di directory per qualsiasi directory che non contiene un file indice - definito dalla direttiva DirectoryIndex, ma in genere index.html, index.htm, index.php e simili.
Su una nota più generale:
Puoi prendere in considerazione l'utilizzo di un sistema di controllo di revisione come SVN o git (o anche RCS) per mantenere le vecchie versioni E una cronologia delle modifiche delle tue pagine Web (inclusa la possibilità di vedere cosa è cambiato e quando e, soprattutto, la capacità di ripristinare una versione precedente)
Sia git che svn necessitano di un repository impostato altrove. RCS è abbastanza primitivo e di base ma non richiede alcuna configurazione, mantiene la cronologia delle revisioni nella stessa directory o in una sottodirectory ./RCS se presente. Un piccolo fastidio con RCS è che quando si effettua il check-in di un file, cambia le autorizzazioni in sola lettura, quindi è necessario ricontrollarlo prima di poterlo modificare di nuovo (o utilizzare ci -l
per effettuare il check-in di un file e controllare immediatamente fuori).
Git IMO è probabilmente eccessivo per questo lavoro, SVN è vicino all'ideale in termini di complessità vs capacità di gestire la cronologia delle revisioni di un set di pagine HTML modificate a mano e RCS è arcaico ma ancora utile. Con RCS è possibile modificare i file solo direttamente in / var / www, il che significa che le modifiche sono "attive" non appena si salva il file. Con svn o git puoi estrarre una copia locale in, ad esempio, la tua home directory sul tuo computer desktop, modificare i file, archiviare le modifiche e quindi estrarre gli aggiornamenti in / var / www sul server quando è finito. È inoltre possibile effettuare il checkout delle modifiche a un server di gestione temporanea prima del test, prima di verificarle sul server di produzione.
Puoi quindi negare l'accesso alle sottodirectory .svn /, .git /, RCS / etc con apache - ad es. Vedi /programming/398008/deny-access-to-svn-folders-on-apache
Naturalmente, l'uso efficace del controllo di revisione richiederà un po 'di disciplina. dovrai prendere l'abitudine di controllare le modifiche ogni volta che le apporti - ne vale la pena.
/var/www
.