����CGI���N���b�N����Ă��܂������R�F�X�p������̃T�j�^�C�Y�J����@�i1/2 �y�[�W�j

Perl���͂��߂Ƃ��錾��ł́A�t�H�[���ƃp�C�v�����ɏ\���Ȓ��ӂ����Ȃ���΂Ȃ�Ȃ��B���̗��R�ɂ́AWeb���烍�[�J�����\�[�X�ւ̃A�N�Z�X���ɗ͐�������K�v�����邩�炾�B

» 2005�N12��21�� 08��28�� ���J
[���c�L�CITmedia]

�@�I�����C���E���b�N�u�X�p������̃T�j�^�C�Y�J����@�v�̑O���uPerl�͈����Ȃ��\�\CGI�Z�L�����e�B�z�[���̗��Ƃ����v�́AWeb�T�[�o�ɂ�����CGI�X�N���v�g�̎d�g�݂ɂ‚��ĉ�������B�����댩�|����j���[�X����ǂ݉������߂ɁA�Z�L�����e�B�[�z�[�������܂�Ă��܂���{���Ƃ��ė������Ă��������B

CGI�X�N���v�g�̃Z�L�����e�B

�@CGI�iCommon Gateway Interface�j�X�N���v�g�́A�uPerl�͈����Ȃ��\�\CGI�Z�L�����e�B�z�[���̗��Ƃ����v�ł��G�ꂽ�悤�ɁAPerl����ō���邱�Ƃ������B�������A�����Perl�Ƃ����X�N���v�g���ꂪCGI�쐬�̂��߂Ɏ�y������A�Ƃ�������傫���B

�@Perl�iPractical Extraction and Report Language�j�́A�����[�E�E�H�[�������J�������X�N���v�g����̎��s�‹��\�t�g�E�F�A�ł���A�e�L�X�g�����Ɍ����Ă���B�܂����j���Â����߁A�C���^�[�l�b�g��ŗ��p���������APerl�œ��삷�郂�W���[���������t���[�E�F�A�Ƃ��Č��J����Ă���B���̂��߁APerl���g���Ď�y�Ƀl�b�g���[�N�A�v���P�[�V�������\�z���邱�Ƃ��”\�Ȃ̂��B

�@�����Ƃ͂����ACGI�����s�肾���������A���̃L�b�J�P�ƂȂ����X�N���v�g��Perl�ō���Ă�������c�c�A�Ƃ������R���傫����������Ȃ��B������C����ł��ACGI�X�N���v�g����������Ă������Ƃ�����A�M�҂�C����ŃR�[�f�B���O�����o��������B�������AC����ł͕����񏈗�����r�I�_��Ɍ����邽�߁ACGI�X�N���v�g���v���O���~���O����ɂ͕s�����ł���Ɗ������B

�@CGI�X�N���v�g�ł̓u���E�U��Ƀ��[�U������͂��ꂽ�f�[�^���󂯎��A�T�[�o��ŏ������s���A���̌��ʂ��u���E�U���֕Ԃ��̂���ȏ����ƂȂ�B

�@���̈�A�̏����̗���ł́A�f�[�^�̈������z�肳�ꂽ���̂œ��삷��΂悢���A�v��ʕ��������͂��ꂽ�ꍇ�A�Z�L�����e�B�z�[�����o�ƂȂ�”\��������̂��B

�@���̂悤�Ȗ�肪���₽�Ȃ��̂́A�N���C�A���g����ǂ̂悤�ȕ�����i�f�[�^�j���n����Ă��邩�A�p�^�[����������ɂ����ē��荢����炾�B�T�[�o���̊J���҂��\�t�g�E�F�A�̕]���ɂ����āA���ׂẴp�^�[���ɂ‚��ăe�X�g���ł��Ă���킯�ł͂Ȃ��B���̂��߁A�z�肳�ꂽ�e�X�g����R��Ă����p�^�[���ɂ‚��āA���ӂ��郆�[�U�[���C�t���Ă��܂��ƃZ�L�����e�B�z�[���Ƃ��Ė���݂ɏo��킯���B

�t�@�C���p�X�̖ӓ_

�@�T���āA�T�[�o��̃t�@�C���ɃA�N�Z�X���鏈�����̂��̂́A�\���ɒ��ӂ��Ȃ���΂Ȃ�Ȃ��B

�@�����ł̓Z�L�����e�B�z�[���̂���CGI�X�N���v�g�̃T���v���Ƃ��āA�T�[�o���Ńt�@�C�����I�[�v������v���O�����������i�֘A�����N�j�B

  • index.html
  • test.cgi

�@�֘A�����N���CGI�X�N���v�g�́A���[�U�[�����͂����t�@�C�����T�[�o���œǂݎ��A�\��������Ƃ������̂��BCGI�X�N���v�g���ł́A�X�N���v�g�{�̂�����̃f�B���N�g������_�Ƃ��Adata/�f�B���N�g�����̃t�@�C����ǂݍ��ށB���X�g1�Ƀt�@�C����ǂݍ���ł�����̃R�[�h�i�X�N���v�g�j���������B

�@�@�@�@�@�@ 1|2 ���̃y�[�W��

Copyright © ITmedia, Inc. All Rights Reserved.

'; e_dlv.innerHTML = html; adRequest({position:dlv_pos,dom:true}); }else if(ad_type === 'gam'){ var html = '
'; e_dlv.innerHTML = html; refreshGam('InArtSpecialLink'); }else if(ad_type === 'logly'){ var html = '
'; e_dlv.innerHTML = html; loglySet(g_id); }else if(ad_type === 'google'){ var html = '
'; e_dlv.innerHTML = html; googletag.cmd.push(function(){ var slot8 = googletag.defineSlot('/43042345/nlab_artinsert_RT',[[336,280],[300,250],'fluid'],'div-gpt-ad-1551176482959-0').addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.enableServices(); googletag.display('div-gpt-ad-1551176482959-0'); googletag.pubads().refresh([slot8]); }); } }; var insert_ok = function(_target,_str){ var clearfix = d.createElement('div'); clearfix.className = 'colBoxClear'; if(ad_float_fix){ e_body.insertBefore(e_dlv,_target); e_body.insertBefore(clearfix,_target.nextElementSibling); }else{ e_body.insertBefore(e_dlv,_target); } set_dlv(); }; var insert_ng = function(_str){ e_dlv.style.display = 'none'; }; var main = function(){ var e_nodes = e_body.childNodes; // BODY �����q�v�f var e_tags = []; // BODY �����^�O var p_num = []; // BODY ���� P �^�O�ʒu var p_target_num; // �g�}����ʒu var o_float = {}; // ��荞�ݗv�f var o_this = {}; // �A�N�e�B�u�^�O var o_next = {}; // �A�N�e�B�u�^�O�̎��̃^�O var flag_insert = 0; // �}���t���O // ��荞�ݗv�f�`�F�b�N var check_float = function(_e){ var e = 0; if(_e.id.match(/^col\d{3}(l|r)$/)){ e = _e; } return e; }; // �v�f�� Y ���W�ƍ����̍��v�l var get_element_y = function(_e){ var ey = 0; var eh = _e.offsetHeight; while(_e){ ey += _e.offsetTop; _e = _e.offsetParent; } return ey + eh; }; var check_ptag = function(_e){ var e = 0; if(_e.tagName && _e.tagName === 'P'){ e = _e; } return e; }; var try_insert = function(){ p_target_num = Math.floor(p_num.length / 2) - 1; if(p_target_num >= _maxrange) p_target_num = _maxrange; if(dis_con) p_target_num = 0; for(var i = p_num[p_target_num]; i < e_tags.length; i++){ o_this.e = check_ptag(e_tags[i]); if(o_this.e){ o_next.e = check_ptag(e_tags[i + 1]); if(o_next.e){ if(!o_float.e || check_float(e_tags[i - 1])){ o_float.e = check_float(e_tags[i - 1]); o_float.n = i - 1; } if(o_float.e && o_float.n < i + 1){ o_float.y = get_element_y(o_float.e); o_this.y = get_element_y(o_this.e); set_line(o_float.y,'red'); set_line(o_this.y,'blue'); if(o_float.y < o_this.y){ flag_insert = 1; insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂���'); break; } }else{ flag_insert = 1; insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂Ȃ�'); break; } } }else{ o_float = {}; } } if(!flag_insert){ insert_ng('�}���ʒu�Ȃ�'); } }; // �S�q�v�f����^�O�̂ݔz��ɓ���� for(var i = 0; i < e_nodes.length; i++){ if(e_nodes[i].tagName){ e_tags.push(e_nodes[i]); } } // �S�^�O���� P �^�O�ʒu��z��ɓ���� for(var i = 0; i < e_tags.length; i++){ if(e_tags[i].tagName === 'P') p_num.push(i); // �ŏ��̉�荞�ݗv�f���i�[ if(!o_float.e){ o_float.e = check_float(e_tags[i]); o_float.y = get_element_y(o_float.e); o_float.n = i; } } if(p_num.length >= _threshold){ try_insert(); }else{ insert_ng('P �^�O ' + _threshold + ' �ȉ�'); } }; if(e_body){ main(); }else{ insert_ng('�L���{���Ȃ�'); } })(document,4,5);

���ڂ̃e�[�}

���Ȃ��ɂ������߂̋L��PR