Apa cara yang tepat untuk mengaktifkan header charset yang benar di NGINX?
Saya menganalisis situs web saya dengan Google Page Speed. Dikatakan bahwa saya harus menentukan charset dari file HTML di HTTP-header. Apa cara yang tepat untuk melakukan ini?
Saya sudah mencoba mengatur charset utf-8;
dalam server {}
deklarasi file konfigurasi NGINX saya, tetapi tidak ada efek apa pun.
Server saya merespons dengan tajuk berikut:
Connection: keep-alive
Date: Fri, 16 Sep 2011 12:43:24 GMT
Last-Modified: Fri, 02 Sep 2011 15:13:17 GMT
Server: nginx/0.7.67
Terima kasih.
Jawaban:
Menambahkan
charset utf-8;
hampir semua yang perlu Anda lakukan. Yakin tidak memuat ulang nginx setelah Anda mengubah file konfigurasi?Selain pada saat penulisan, curl -I http://vorb.de/ mengembalikan hasil berikut:
Jadi semuanya terlihat baik-baik saja sekarang.
sumber
Mengatur charset mungkin tidak berfungsi jika Anda tidak mengatur "charset_types" direktif yang Anda inginkan UTF-8.
Sebagai contoh: Ketika Anda mengatur "charset utf-8;", semua HTML akan mencerminkan, tetapi bukan file JSON, karena mereka tidak diset secara default pada "charset_types".
http://nginx.org/en/docs/http/ngx_http_charset_module.html#charset_types
sumber
Anda mungkin juga harus menyesuaikan
charset_types
pengaturan untuk memasukkan tipe mime yang ingin Anda atur pengaturan charset untuk (misalnya teks / kalender tidak termasuk di sana secara default).Untuk apa nilainya saya pikir itu
text/*
harus ditangani secara default - tetapi Anda tidak dapat menggunakannya di sini (seperti dengan Apache IIRC).Lihat http://nginx.org/en/docs/http/ngx_http_charset_module.html#charset_types
sumber
Itu yang kamu butuhkan. Ini tidak akan bekerja untuk saya kecuali saya memiliki keduanya.
sumber