Tôi gặp phải một vấn đề mới mà tôi chưa từng thấy trước đây: Khách hàng của tôi đang thêm tệp vào dự án mà chúng tôi xây dựng và một số tên tệp có các ký tự đặc biệt trong đó vì một số từ .Các ký tự không phải ascii trong URL
Ví dụ: một tệp tôi đang thử nghiệm có chữ Á trong đó. Tôi đang gọi hình ảnh đó trong một tệp css dưới dạng hình nền nhưng trong Safari nó không hiển thị. Nhưng nó có trên FF và Chrome.
Khi kiểm tra, tôi đã dán liên kết vào trình duyệt và điều tương tự. Hoạt động trên FF và Chrome nhưng Safari ném một lỗi. Vì vậy, các ký tự ngôn ngữ đang ném nó tôi đoán?
Firefox chuyển đổi url sau và thay đổi á thành% CC% 81 và tải hình ảnh.
http://www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche -Clássico_foto-Henrique-Peron-470x120-1371827671.jpg
Bạn có thể thấy nó phá vỡ ở trên ... nhưng FF và Chrome chuyển đổi đó để: http://www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche-Cla%CC%81ssico_foto-Henrique-Peron-470x120-1371827671.jpg
Bạn cũng có thể thấy điều này trong hành động ở đây: http://jsfiddle.net/Md4gZ/2/
.testbox { width:340px; height:100px; background:url('http://www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche-Clássico_foto-Henrique-Peron-470x120-1371827671.jpg') no-repeat top left; }
Vì vậy, whats đúng cách để xử lý việc này. Tôi đang phát triển bằng PHP và WORDPRESS. Tôi không muốn yêu cầu khách hàng quay trở lại và thay thế tất cả các tệp bằng các ký tự đặc biệt.
Mọi trợ giúp đều được đánh giá cao. Cảm ơn!
bạn có đề xuất khai báo nó trong tiêu đề để trình duyệt tự chuyển đổi các ký tự hoặc một loại tập lệnh nào đó không? Tôi có thiết lập tương tự như OP (Wordress) –
Tôi không thể nói về bất kỳ thiết lập cụ thể nào, nhưng nói chung tôi đề nghị URL: s được mã hóa trong mã nơi chúng xuất hiện (trong html hoặc bất kỳ) sử dụng cùng một quy ước máy chủ web. Nếu bạn có bất kỳ ảnh hưởng nào của quy ước mà máy chủ web sử dụng, tôi khuyên bạn nên sử dụng các chuỗi byte UTF-8 sử dụng% HH. Khai báo nó trong tiêu đề? Không chắc chắn rằng sẽ có bất kỳ hiệu ứng, và có lẽ trình duyệt phụ thuộc. – njlarsson