HowTo: Nginx Webserver Send Charset utf-8 Under Unix

by on November 5, 2012 · 1 comment· LAST UPDATED November 11, 2012


I was told that to improve resource download parallelization in IE8 I need to send the character set to the HTTP Content-Type response header. How do I set charset utf-8 under nginx web server running on Unix like operating systems?

Tutorial details
DifficultyEasy (rss)
Root privilegesYes
Estimated completion timeN/A

You need to use the ngx_http_charset_module. This module provides the specified charset to the "Content-Type" response header field. You can view such header using nothting but standard wget or curl command:

curl -I


wget --server-response -O /dev/null

How do I enable charset HTTP-header in Nginx?

Open your nginx.conf, enter:
# vi nginx.conf
Append/modify the following directive in http, server, or location:

charset UTF-8;

Save and close the file. Reload the nginx web server, enter:
# /usr/local/nginx/sbin/nginx -s reload

How do I test charset HTTP-header?

Type the following command:
$ wget --server-response -O /dev/null
$ curl -I
Sample outputs:

HTTP/1.1 200 OK
Server: nginx
Date: Mon, 05 Nov 2012 16:42:51 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
X-Whom: l2-com-cyber
Vary: Cookie
Last-Modified: Mon, 05 Nov 2012 16:38:02 GMT
Cache-Control: max-age=311, must-revalidate
X-Galaxy: Andromeda-1
X-Origin-Type: DynamicViaDAL
Tweet itFacebook itG+ itDownload PDF versionFound an error/typo on this page?

{ 1 comment… read it below or add one }

1 Atif August 14, 2013 at 7:29 am

Thanks for the useful write up .

Just one comment ,

In order for this to work , charset_types should also be defined as utf-8 . If charset_types not defined the above will not set intended charset .


Leave a Comment

Tagged as: , , , ,

Previous Faq:

Next Faq: