Thank you.
May I suggest a slight improvement in the online doc at
http://perl.apache.org/docs/2.0/api/Apache2/RequestRec.html#C_content_type_
then, to add this explicitly ?
Currently, it says :
quote
content_type
Get/set the HTTP response Content-type header value.
my $content_type = $r->content_type();
my $prev_content_type = $r->content_type($new_content_type);
* obj: $r ( Apache2::RequestRec object )
* opt arg1: $new_content_type (MIME type string)
Assign a new HTTP response content-type. It will affect the response only if HTTP
headers weren't sent yet.
* ret: $content_type
The current content-type value.
If $new_content_type was passed, the previous value is returned instead.
* since: 2.0.00
For example, set the Content-type header to text/plain.
$r->content_type('text/plain');
If you set this header via the headers_out table directly, it will be ignored by Apache.
So do not do that.
unquote
Maybe just an additional example :
$r->content_type('text/plain; charset=UTF-8');
Joe Schaefer wrote:
Yes!
----- Original Message ----
From: André Warnier <a...@ice-sa.com>
To: mod_perl list <modperl@perl.apache.org>
Sent: Sat, May 28, 2011 8:23:34 AM
Subject: How to set Content-type properly
Hi.
I am using :
Apache/2.2.9 (Debian) DAV/2 SVN/1.5.1 mod_jk/1.2.26 PHP/5.2.6-1+lenny9 with
Suhosin-Patch mod_ssl/2.2.9 OpenSSL/0.9.8g mod_apreq2-20051231/2.6.0
mod_perl/2.0.4 Perl/v5.10.0
In a PerlResponseHandler, I am using Template-Toolkit to generate html pages
sent back to the browser.
Before rendering a template, I set the response Content-type header, as :
$r->content_type('text/html');
This results in a HTTP response to the browser, with the following header :
Content-Type: text/html
However, I would like this :
Content-Type: text/html; charset=UTF-8
How do I do that ?
is
$r->content_type('text/html; charset=UTF-8');
admissible ?