CSS와 JavaScript가 각 언어 (즉, 한 파일의 모든 CSS, 한 파일의 모든 JavaScript)에 단일 파일로 결합 된 이유는 모든 대답이 정확하지만 아무도 진짜 이유를 제시하지 않았습니다 선형 숫자 ID 또는 버전 번호 대신에 영숫자 문자열 —이 사용 된 이유는 무엇입니까?
영숫자 해시를 사용하는 주된 이유는 일반적으로 집계와 관련하여 여분의 데이터를 저장하는 번거 로움이나 지연을 원하지 않기 때문입니다. 자동 시스템이있을 때마다 증가하는 숫자를 원한다면 그 숫자를 데이터베이스에 저장할 필요가 있습니다. 이 숫자가 버전 번호가되기를 원하면 더 복잡해집니다. 즉, 각 구체화 된 파일에 별도의 번호를 저장해야하기 때문입니다 (CMS를 사용할 때 에머 생성 파일의 수는 빠르게 변경 될 수 있습니다. 그 특정 페이지에).
HTML 소스를 렌더링 할 때 MD5
또는 SHA1
과 같은 것을 사용하여 소금 값과 현재 타임 스탬프를 기반으로 영숫자 해시를 생성하는 것이 훨씬 간단합니다. 이러한 함수는 생성 된 해시의 길이와 계속 증가하는 타임 스탬프에 따라 이전 값 (캐싱이 포함될 때 피하기를 원하는 것, 다른 포스터에서 설명한 것처럼 피할 수있는 무언가)과의 충돌을 거의 보장합니다.
임의로 파일 이름을 임의로 만들면 외부 사용자가 핫 링크 또는 기타 사기를 방지 할 수 있습니다. 이것은 CSS의 문제는 아니지만 JS가 될 수 있습니다.
@yabol 질문은 여전히 나타납니다. –