Pour répondre directement à vos questions - vous pouvez soit conserver ces fichiers ailleurs, soit configurer apache pour leur refuser l'accès - refuser l'accès à * .bak est relativement simple.
Apache, sauf configuration contraire (comme mentionné par MH ci-dessus), générera et affichera une liste de répertoires pour tout répertoire qui ne contient pas de fichier d'index - défini par la directive DirectoryIndex, mais généralement index.html, index.htm, index.php et similaire.
Sur une note plus générale:
Vous voudrez peut-être envisager d'utiliser un système de contrôle des révisions tel que SVN ou git (ou même RCS) pour conserver les anciennes versions ET un historique des modifications de vos pages Web (y compris la possibilité de voir ce qui a changé et quand et, plus important encore, la possibilité de revenir à une version précédente)
Git et svn ont besoin d'un référentiel configuré ailleurs. RCS est assez primitif et basique mais ne nécessite aucune configuration, il conserve l'historique des révisions dans le même répertoire ou dans un sous-répertoire ./RCS s'il en existe un. Un inconvénient mineur avec RCS est que lorsque vous archivez un fichier, il modifie les autorisations en lecture seule, vous devez donc le réessayer avant de pouvoir le modifier à nouveau (ou utiliser ci -l
pour archiver un fichier et vérifier immédiatement IT out).
IMO git est probablement exagéré pour ce travail, SVN est presque idéal en termes de complexité par rapport à la capacité de gérer l'historique des révisions d'un ensemble de pages HTML éditées à la main, et RCS est archaïque mais toujours utile. Avec RCS, vous ne pouvez modifier les fichiers directement dans / var / www, ce qui signifie que les modifications sont "en direct" dès que vous enregistrez le fichier. Avec svn ou git, vous pouvez extraire une copie locale, par exemple, votre répertoire personnel sur votre ordinateur de bureau, modifier les fichiers, archiver les modifications, puis extraire les mises à jour dans / var / www sur le serveur lorsqu'il est fini. Vous pouvez également extraire les modifications d'un serveur de transfert en premier pour les tester, avant de les extraire sur le serveur de production.
Vous pouvez ensuite refuser l'accès aux sous-répertoires .svn /, .git /, RCS / etc avec apache - par exemple, voir /programming/398008/deny-access-to-svn-folders-on-apache
Bien sûr, l'utilisation efficace du contrôle de révision prendra un peu de discipline. vous devrez prendre l'habitude de vérifier vos modifications chaque fois que vous les apporterez - cela en vaut la peine.
/var/www
.