���҂�WebDAV�����\�z�������A���̂܂܂ł͓��{��t�@�C���^�t�H���_�����g���Ȃ��ȂǁA������肪����B�����ŁA���̖����������A�����WebDAV�����p���邽�߂̉^�p���@��͍�����B
�@�����ō\�z����WebDAV���œ��{����܂ޖ��O�̃t�@�C����t�H���_�����ƁA���5�̂悤�Ɉꌩ�������쐬����Ă���悤�Ɍ����Ă��A
�t�H���_�����X�V��������6�̂悤�Ɏ��͖��O�������Ă����肷�邱�ƂɋC���t���͂����B���̏�ԂŃA�N�Z�X����ƁA�G���[���������Ă��̃t�@�C����t�H���_�͗��p�ł��Ȃ��B����ł͂���������������B
�@����́A�t�@�C���̍쐬��t�@�C�����̕ύX���ɁAWebDAV�T�[�o�ɑ���t�@�C�����̕��������`�����V�t�gJIS�ł���̂ɑ��i�}5�j�AWebDAV�T�[�o����N���C�A���g�ɑ�����t�@�C�����̕��������`����UTF-8�Ȃ̂����ڂ̌����ł���B
�@�N���C�A���g����ǂ̂悤�ȕ������`���̃t�@�C����������𑗂邩���T�[�o�ɒʒm���邽�߂̎d�g�݂��Ȃ������ɁiXML���W���邱�Ƃ���AWebDAV�ł̓t�@�C����������̕������`���ɂ��Ă�UTF-8�𐄏����Ă���Ɛ��������j�AWeb�t�H���_���瑗�o�����t�@�C����������̕������`������ɃV�t�gJIS�ł��邱�Ƃ������ł���B���̕����ARFC 2718�ɂ�����UTF-8����������Ă���iURI�̕����������`���̕����j�|���L�q����Ă��邱�Ƃ����邪�A���̂悤�Ȃ����͂����Ȃ��悤�Ȍ`�Ŏ�舵���Ă����ƐɊ�]����B
�@���̂悤�ȏ���������̂��AIIJ��Taisuke Yamada�����쐬����mod_encoding���W���[���i���j�ł���B��̓I�ɂ́A�}6�̂悤�ȓ�����s���BYamada���͖{���W���[����IIJ�����Ŏg�����߂ɍ�������A��Ђ̋��ĎЊO�Ɍ��J���Ă���Ƃ̂��ƁB�ڍׂȎg�p�����́A���W���[���ɋL�q����Ă���̂ŎQ�l�ɂ��Ăق����B
���Fmod_encoding���g���Ȃ��l�́A�t�@�C����t�H���_�̍쐬��Ƀt�H���_�����X�V���Ȃ��Ŗ��O��ύX����Ȃǂ��đΏ����Ăق����B
�@mod_encoding�̓����菇�͈ȉ��̂Ƃ���ł���B
1�D�\�[�X�R�[�h�̎擾
�@mod_encoding.c��WebDAV�̃��[�����O���X�g�idav-dev�j�Ō��J���ꂽ���̂ł���A�������肷��ɂ̓��[�����O���X�g�̃A�[�J�C�u����擾����K�v���������B�������A����͍�҂ł���Taisuke Yamada���̂����ӂɂ��Amod_encoding.c��]�ڂ����Ă����������B�]�ڂ���������������Taisuke Yamada���Ɋ��ӂ������܂��B
�@�Ȃ��Amod_encoding.c�̃I���W�i����http://www.lyra.org/pipermail/dav-dev/2001-May/002428.html�ɂ���B
2�D�R���p�C������уC���X�g�[��
$ apxs -c mod_encoding.c $ su root # apxs -i mod_encoding.so
�@����ŁAApache�̃��W���[�����i�[����Ă���f�B���N�g����mod_encoding.so���쐬�����B
3�DApache�̐ݒ�
�@httpd.conf�t�@�C����ҏW���āA
LoadModule encoding_module libexec/mod_encoding.so AddModule mod_encoding.c
�Ƃ����L�q��lj����邱�Ƃ�mod_encoding�̋@�\��Apache�Ɏ�荞�݁A
<IfModule mod_encoding.c> EncodingEngine on SetServerEncoding UTF-8 AddClientEncoding SJIS "Microsoft .* DAV" AddClientEncoding SJIS "xdwin9x/" AddClientEncoding EUC-JP "cadaver/" </IfModule>
�ƋL�q���邱�ƂŁA����̎�ނ̃N���C�A���g�i�����ł�Microsoft�nOS�����cadaver�j��Client Encoding���w�肵�A�K�ȏ������s����悤�ɂ���B
4�D����m�F
�@�����܂łŁA���{��t�@�C���^�t�H���_����������悤�ɂȂ��Ă���͂����B���ۂɓ��{��Ŗ��O��t�����t�H���_��t�@�C������舵����������7�Ɏ����B
�@mod_encoding�͕����R�[�h�̎�舵����iconv()�̎����Ɉˑ����Ă��邽�߁Aiconv()���C���X�g�[������Ă���K�v������BLinux�ɂ��ẮA�ŋ߂̃f�B�X�g���r���[�V�����ō̗p���Ă���glibc�ł���Ζ��͂Ȃ��iiconv()�������Ă���j���A�����łȂ����̂�iconv()���Ȃ�OS�Ȃǂł́A�ʓrlibiconv���K�v�ƂȂ�B
�@�Ȃ��A�Â��o�[�W������glibc���g����Linux�������肷��ƁAiconv()�̎������Â���mod_encoding���W���[��������ɋ@�\���Ȃ����Ƃ�����B���̂悤�ȏꍇ�́Amod_encoding.c��170�s�ڂɂ���A
iconv(cd, NULL, NULL, NULL, NULL);
�̍s���ۂ��ƃR�����g�A�E�g�^�����ɂ��邱�ƂŎ�肠�����̑Ώ��͂ł���B�������A���̕����̓o�b�t�@��X�e�[�^�X�̃t���b�V�������s���镔���Ƃ̂��ƂȂ̂ŁAglibc�̃o�[�W�����A�b�v�ȂǂőΏ���������悢�B
�@�܂��Aiconv()�̎����ɋN�������������邪�A����ɂ��Ă͌�q����B
Copyright © ITmedia, Inc. All Rights Reserved.