질문에 직접 대답하기 위해-다른 파일을 다른 곳에 보관하거나 파일에 대한 액세스를 거부하도록 아파치를 구성 할 수 있습니다. * .bak에 대한 액세스는 비교적 간단합니다.
Apache는 그렇게하지 않도록 구성하지 않으면 (위의 MH에서 언급 한 바와 같이) 색인 파일을 포함하지 않는 디렉토리 (DirectoryIndex 지시문에 의해 정의되지만 일반적으로 index.html, index.htm, index.php 및 이와 유사합니다.
보다 일반적인 참고 사항 :
SVN 또는 git (또는 RCS)와 같은 개정 제어 시스템을 사용하여 이전 버전을 유지하고 웹 페이지의 변경 내역 (변경된 사항과시기, 더 중요한 사항을 볼 수있는 기능 포함)을 유지하는 것이 좋습니다 이전 버전으로 되돌리기)
git과 svn 모두 다른 곳에 저장소를 설정해야합니다. RCS는 기본적이고 기본적이지만 설정이 필요하지 않으며 동일한 디렉토리 또는 ./RCS 서브 디렉토리 (있는 경우)에 개정 히스토리를 유지합니다. RCS의 단점 중 하나는 파일을 체크인 할 때 권한이 읽기 전용으로 변경되므로 파일을 다시 편집하기 전에 다시 체크 아웃해야합니다 (또는 ci -l
파일을 체크인하고 즉시 확인하는 것임). 밖으로).
IMO git은 아마도이 작업에 과잉 일 수 있습니다 .SVN은 복잡성에 비해 수작업으로 편집 된 HTML 페이지 세트의 개정 내역을 관리하는 데 이상적이며 RCS는 고풍 스럽지만 여전히 유용합니다. RCS를 사용하면 / var / www 내에서만 직접 파일을 편집 할 수 있습니다. 즉, 파일을 저장하자마자 변경 사항이 "실시간"으로 표시됩니다. svn 또는 git을 사용하면 데스크탑 시스템의 홈 디렉토리에서 로컬 사본을 체크 아웃하고 파일을 편집하고 변경 사항을 체크인 한 다음 서버의 / var / www에 업데이트를 체크 아웃 할 수 있습니다. 끝마친. 프로덕션 서버에서 체크 아웃하기 전에 테스트를 위해 스테이징 서버에 대한 변경 사항을 먼저 체크 아웃 할 수도 있습니다.
그런 다음 아파치를 사용하여 .svn /, .git /, RCS / etc 하위 디렉토리에 대한 액세스를 거부 할 수 있습니다 (예 : /programming/398008/deny-access-to-svn-folders-on-apache 참조).
물론, 개정 관리를 효과적으로 사용하려면 약간의 훈련이 필요합니다. 변경 사항을 만들 때마다 변경 사항을 확인하는 습관을 들여야합니다. 노력할 가치가 있습니다.
/var/www
.