Here's a tiny XS mod_perl module to configure AddDefaultCharset stuff
from mod_perl. This is my first XS hack, thanks to mod_perl
developer's cookbook.

Any suggestions are welcome.

http://bulknews.net/lib/archives/Apache-DefaultCharset-0.01.tar.gz

=head1 NAME

Apache::DefaultCharset - AddDefaultCharset configuration from mod_perl

=head1 SYNOPSIS

  use Apache::DefaultCharset;

  my $charset = Apache::DefaultCharset->new($r);
  print "default_charset_name is ", $charset->name;
  # or print "default charset is $charset"; will do (overload)

  $charset->name('euc-jp');     # modify default_charset_name in run-time

=head1 DESCRIPTION

Apache::DefaultCharset is an XS wrapper for Apache Core's
C<AddDefaultCharset> configuration.

=head1 EXAMPLES

=head2 Unicode Handling

Suppose you develop multi-language web application, and transparently
decode native encodings into Unicode string inside Perl (5.8 or over
would be better). First you should add

  AddDefaultCharset euc-jp

in your C<httpd.conf>, then leave off C<send_http_header> arguments
just to text/html. Then you can get the current configuration with
this module when you use C<Encode> or C<Text::Iconv> to decode the HTTP
request query into Unicode.

=head2 Modification of DefaultCharset

Suppose you want to add utf-8 for XML files, and Shift_JIS for HTML
files as HTTP charset attribute by default ("By default" means that if
you set C<content_type> explicitly in content-generation phase, that
will be prior to the defalut). This module enables you to write
C<PerlFixupHandler> to configure C<add_default_charset_name> in
run-time.

=head1 AUTHOR

Tatsuhiko Miyagawa E<lt>[EMAIL PROTECTED]<gt>

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

=head1 SEE ALSO

L<Apache::GuessCharset>

mod_perl cookbook at http://www.modperlcookbook.com/

=cut

Reply via email to