2009-10-23 26 views
8

Chúng tôi đang trong quá trình viết lại một số trang web của chúng tôi và cố gắng tận dụng tối đa bộ nhớ đệm của trình duyệt cho người dùng của chúng tôi. Chúng tôi đã tạo một nhóm các tệp css được chia sẻ mà chúng tôi dự định sử dụng làm "xây dựng thương hiệu công ty" trên nhiều trang web mà chúng tôi đã tạo.Độ nhạy trường hợp tên tệp CSS & bộ nhớ đệm tệp Css

Lý do cho điều này, chúng tôi biết rằng các trình duyệt sẽ lưu vào bộ nhớ cache một tệp CSS trong một khoảng thời gian xác định. Điều gì sẽ xảy ra nếu tôi chỉ định cùng một tên tệp trong các trang web khác nhau với một lớp vỏ khác nhau, nó sẽ lưu trữ cả phiên bản của tệp (thậm chí là chúng có cùng nội dung) hoặc nó sẽ nhận ra rằng đó là cùng một tệp, do đó bỏ qua trường hợp của tên tệp


<link href="http://branding.corporateentity.com/style/screen.css" type="text/css" /> 
<link href="http://branding.corporateentity.com/style/print.css" type="text/css" /> 

vs: CASE được


<link href="http://branding.corporateentity.com/Style/Screen.css" type="text/css" /> 
<link href="http://branding.corporateentity.com/Style/Print.css" type="text/css" /> 
+1

Nói chung, tôi tránh sử dụng trường hợp để phân biệt những thứ được đặt tên tương tự theo giả định rằng một số hệ thống, ở đâu đó, sẽ làm điều sai. Tốt nhất là gắn bó với một bộ quy tắc vỏ cho tất cả đặt tên. Nó sẽ dễ dàng hơn cho bạn để làm cho một kịch bản để săn lùng các vấn đề trong mã của bạn, hơn là kiểm tra mọi môi trường web có thể có thể tiêu thụ nó. –

Trả lời

4

URL phân biệt chữ hoa chữ thường, do đó, điều tốt nhất là luôn sử dụng một trường hợp cụ thể. Tôi khuyên bạn nên làm mọi thứ chữ thường (và tách các từ bằng dấu gạch ngang) để đơn giản. Điều này cũng được đề nghị cho tên trang và hình ảnh của bạn, cho mục đích SEO.

Trình duyệt sẽ xử lý trường hợp khác nhau dưới dạng các tệp khác nhau vì chúng không biết liệu máy chủ có đang hoạt động giống nhau hay không. Do đó, trình duyệt sẽ không sử dụng bộ nhớ cache của nó là style/screen.css nếu trình duyệt thấy liên kết đến Style/Screen.css.

1

URL của nhạy cảm, và trình duyệt theo đó chuẩn, một trường hợp khác là một tập tin khác nhau. Tuy nhiên, vì một số trình duyệt có thể không theo chuẩn protocall (ví dụ, tôi nghĩ Windows không phân biệt chữ hoa chữ thường, và tự hỏi nếu một số trình duyệt cũ buồn không thể phân biệt sự khác biệt giữa 'file' và ' Tập tin').

1

Trình duyệt sẽ luôn phân biệt giữa các vỏ khác nhau trong URL, vì một số máy chủ web trả lại các kết quả khác nhau cho các gói khác nhau.

Máy chủ web Windows không quan tâm đến vỏ, nhưng máy chủ Linus thực hiện. Nếu tệp trên máy chủ Linux, bạn sẽ nhận được một HTTP 404 sử dụng vỏ sai.

+0

Máy tính để bàn của tôi là Windows nhưng máy chủ của tôi là Linux. Mỗi bây giờ và sau đó tôi đã bị đốt cháy khi một chương trình đồ họa viết một tập tin với phần mở rộng ".JPG" nhưng các liên kết của tôi được viết là ".jpg". Nó hoạt động tốt khi tôi kiểm tra nó trên Windows, nhưng khi tôi tải lên Linux, 404. Cố ý rối tung với trường hợp hỗn hợp chỉ là thiết lập cho mình gặp rắc rối. – Jay

Các vấn đề liên quan