ITmedia NEWS > STUDIO >
ZLeBEzbggsbNX

CDN���Cloudflare�̃o�O�ŁA�����̃T�[�r�X�ŋ@���f�[�^���o�̉”\���F�p�X���[�h�ύX����

» 2017�N02��25�� 08��33�� ���J

�@������Web�T�[�r�X��CDN�i�R���e���c�z�M�l�b�g���[�N�j��񋟂��Ă����Cloudflare��2��23���i���n���ԁj�A�G�b�W�T�[�o�̃Z�L�����e�B���Ōڋq��HTTP�N�b�L�[�A�F�؃g�[�N���AHTTP POST�{�̂Ȃǂ̋@���f�[�^�����o���A����ɂ��̈ꕔ��Google��Bing�Ȃǂ̌����G���W���ɂ���ăL���b�V������Ă����Ɣ��\�����B

 cloud 1

�@�o�O�͊��ɏC�����ꂽ�B�L���b�V�����ꂽ�f�[�^�ɂ‚��ẮAGoogle�AYahoo�ABing�Ȃǂ̋��͂ɂ��A���Ƀp�[�W���ꂽ�BCloudflare�́A���o�����f�[�^�����p���ꂽ�Ƃ����񍐂͍��̂Ƃ���Ȃ��Ƃ��Ă���B

�@Cloudflare�̃T�[�r�X�́A�Ⴆ��Uber��FitBit�AFeedly�ȂǁA���E��550���ȏ�̊�Ƃ����p���Ă���B���̖��̉e�����󂯂��”\���̂�����Ƃ̃��X�g���O�҂�GitHub�Ō��J���Ă��邪�A������m�F��������A�������g���Ă���T�[�r�X�̃p�X���[�h��O�̂��߂ɂ��ׂĕύX��������m���ő������낤�ƁA�Z�L�����e�B���Ƃ̃��C�A���E���b�L�[�����A�h�o�C�X���Ă���B

�@���̖��́AGoogle�̏��Z�L�����e�B�G���W�j�A�ł���^�r�X�E�I�[�}���f�B�����uProject Zero�v�̃��T�[�`���ɔ������A2��17����Cloudflare�ɕ񍐂����B�����͕����I�Ȃ��̂ŁA�uAutomatic HTTP Rewrites�v�̗L�����AServer-Side Excludes��Email Obfuscation�̐V�����p�[�T�[�ւ̈ڍs�̍ۂɔ��������B

�@�I�[�}���f�B���ɂ��ƁA�����G���W���̃L���b�V������́A���T�[�r�X��̃v���C�x�[�g�ȃ��b�Z�[�W���O�̓��e��HTTPS�o�R�ő��M���ꂽ���p�X���[�h�Ǘ��T�[�r�X�̃v���C���e�L�X�g��API���N�G�X�g�܂Ō��‚������Ƃ����i���ׂăp�[�W�����j�B�����͖��̋K�͂̑傫������A2014�N�ɔ��o�����uOpenSSL�v�̐Ǝ㐫�uHeartbleed�v��z�N����Ƃ��A�uCloudbleed�v�ƌĂт����Ȃ�Ƃ��Ă���B

 cloud 2 �I�[�}���f�B�������肵���i���ɍ폜�����j�f�[�g�T�[�r�X�̃v���C�x�[�g�ȃ��b�Z�[�W

�@�I�[�}���f�B������A�����󂯂�Cloudflare�͂����ɑΏ��ɓ�����A21���ɂ͊֘A��������قڏC�������B

�@Cloudflare�͌��݁A���߂Ċ����V�X�e����̖���􂢏o���Ă���Ƃ����B

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);