¤¹¤¤¤Þ¤»¤ó¡£ ¢¤Î̾Á°¤òÆþ¤ì˺¤ì¤Þ¤·¤¿m(_ _)m |
Àè¤Î¼ÁÌä¤Ë´ØÏ¢¤·¤Æ¡¢º£²ó½é¤á¤Æ .htaccess ¤Ë¤Ä¤¤¤ÆÄ´¤Ù¤¿¤Î¤Ç¤¹¤¬¡¢ ¤É¤¦¤â¤è¤¯Íý²ò¤Ç¤¤Ê¤¤¤³¤È¤¬¤¢¤ë¤Î¤Ç¡¢¶µ¤¨¤Æ¤¯¤À¤µ¤¤¡£ order ¤Ï¡¢allow ¤È deny ¤Îɾ²Á½ç½ø¤ò»ØÄꤹ¤ë¤È¤¤¤¦¤è¤¦¤ÊÀâÌÀ¤¬¤¢¤ë¤ó¤Ç¤¹¤¬¡¢ ¤³¤ì¤Ï¤É¤¦¤¤¤¦°ÕÌ£¤Ê¤Î¤Ç¤·¤ç¤¦¤«¡© ºÇ½é¡¢É¾²Á½ç½ø¤¬¤É¤¦±Æ¶Á¤¹¤ë¤Î¤«Ê¬¤«¤é¤Ê¤«¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢ ¡ÖUNIX &¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥»¥¥å¥ê¥Æ¥£¡×¡ÊO'REILLY¡Ë¤Î deny,allow ¤Ï¡¢deny¤Èallow¤ÎξÊý¤Ë´Þ¤Þ¤ì¤ëhost¤Ïµö²Ä¤¹¤ë allow,deny ¤Ï¡¢deny¤Èallow¤ÎξÊý¤Ë´Þ¤Þ¤ì¤ëhost¤Ï¶Ø»ß¤¹¤ë ¤È¤¤¤¦¼ñ»Ý¤Îµ½Ò¤òÆɤó¤Ç¡¢¤è¤¦¤ä¤¯»È¤¤Êý¤Ë¤Ä¤¤¤Æ¤Ïʬ¤«¤Ã¤¿¤Î¤Ç¤¹¡£ ¤Ç¤â¡¢¤³¤Î¤è¤¦¤ÊºîÍѤò¤Ê¤¼É¾²Á½ç½ø¤ÇÀâÌÀ¤¹¤ë¤Î¤«¤¬Íý²ò¤Ç¤¤Ê¤¤¤Î¤Ç¤¹¡£ ¤Þ¤¿¡¢Î㤨¤Ð order allow,deny allow from hostA deny from hostB ¤È¤¤¤¦ÀßÄ꤬¤¢¤Ã¤¿¾ì¹ç¡¢¤É¤Á¤é¤Ë¤â´Þ¤Þ¤ì¤Ê¤¤hostC ¤«¤é¤Î¥¢¥¯¥»¥¹¤Ï ¤É¤¦¤Ê¤ë¤Î¤Ç¤·¤ç¤¦¤«¡© allow ¤È deny ¤ÎÁÐÊý¤ò»ØÄꤹ¤ë¤Ã¤Æ¤³¤È¤Ï¡¢¤É¤Á¤é¤«°ìÊý¤¬É¬¤º from all ¤Ë¤Ê¤ë¤È¤Ï¸Â¤é¤Ê¤¤¤Ç¤¹¤è¤Í¡Ê¤â¤·¡¢¤½¤¦¤Ê¤é¾Êά²Äǽ¤Ë¤¹¤ë¤È»×¤¦¤Î¤Ç¡Ë¡£ |
¤ó¡ÄX68000.startshop.co.jp ¤Î»þ·×¤¬¤º¤ì¤Æ¤ë¡£ > ¡ÖUNIX &¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥»¥¥å¥ê¥Æ¥£¡×¡ÊO'REILLY¡Ë¤Î >¡¡deny,allow ¤Ï¡¢deny¤Èallow¤ÎξÊý¤Ë´Þ¤Þ¤ì¤ëhost¤Ïµö²Ä¤¹¤ë >¡¡allow,deny ¤Ï¡¢deny¤Èallow¤ÎξÊý¤Ë´Þ¤Þ¤ì¤ëhost¤Ï¶Ø»ß¤¹¤ë > ¤È¤¤¤¦¼ñ»Ý¤Îµ½Ò ¤ó¡Á¡¢¤³¤ì¤â¤É¤¦¤â¡Ä²¿¤«°ã¤¦¤è¤¦¤Ê¡£³Î¤«¤Ë order ¤Ï ¤Þ¤®¤é¤ï¤·¤¤¤Ç¤¹¤Í¤§¡£ Î㤨¤Ð order deny,allow ¤Ï 1. ºÇ½é¤ÏÁ´¤Æµö²Ä 2. deny ¤Ç»ØÄꤵ¤ì¤Æ¤¤¤¿¤éµñÈÝ 3. allow ¤Ç»ØÄꤵ¤ì¤Æ¤¤¤¿¤éµö²Ä ¤È¤¤¤¦¼ê½ç¤Çɾ²Á¤·¤Þ¤¹¤¬¡¢Âç»ö¤Ê¤Î¤Ï ¡Ödeny ¤Ë¥Þ¥Ã¥Á¤·¤Æ¤â¡¢¤½¤Î¸å allow ¤Ë¥Þ¥Ã¥Á¤·¤¿¾ì¹ç¤Ï¡¢±ÜÍ÷¤òµö²Ä¤¹¤ë¡× ¤È¤¤¤¦¤³¤È¤À¤È»×¤¤¤Þ¤¹¡£ Î㤨¤Ð ºåÂ礫¤é¤ÏÃƤ¯¤±¤É¡¢ºåÂç¤Î¹©³ØÉô(ŬÅö)¤«¤é¤Î¤ßµö²Ä¤¹¤ë¾ì¹ç order deny,allow deny from 133.1 allow from 133.1.2 ºåÂç¤Ïµö²Ä¤¹¤ë¤±¤É¡¢ºåÂç¤Î¹©³ØÉô¤À¤±¤ÏÃƤ¯¾ì¹ç order allow,deny deny from 133.1.2 allow from 133.1 ¤Æ¤Ê´¶¤¸¤Ç¤É¤¦¤Ç¤·¤ç¤¦¡£¤è¤ê°ìÈ̲½¤¹¤ë¤È¡¢ ¡Öµö²Ä¤·¤¿¥Û¥¹¥È°Ê³°¤ÏµñÈݡפʤé order deny,allow deny from all allow from µö²Ä¤¹¤ë¥Û¥¹¥È ¡ÖµñÈݤ·¤¿¥Û¥¹¥È°Ê³°¤Ïµö²Ä¡×¤Ê¤é order allow,deny allow from all deny from µñÈݤ¹¤ë¥Û¥¹¥È ¤Ç¤·¤ç¤¦¤«¡£¾å¤Î2¤Ä¤Î order ¤òµÕ¤Ë¤¹¤ë¤È¡¢¤É¤Î¥Û¥¹¥È¤«¤é¤â ¸«¤é¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£ Áǿ͹ͤ¨¤Ç¤Ï¡¢ deny from 133.1.2 allow from 133.1 ¤È½ñ¤±¤Ð¡¢¾å¤«¤é½ç¤Ëɾ²Á¤¹¤ë¡¢¤Ã¤Æ¤ÊÉ÷¤Ë¤¹¤ì¤Ð¤ï¤«¤ê¤ä¤¹¤¤¤Î¤Ë¡¢ ¤ï¤¶¤ï¤¶ order ¤Ê¤ó¤«»ØÄê¤Ç¤¤ë¤è¤¦¤Ë¤·¤¿¤«¤é¤ï¤«¤ê¤Ë¤¯¤¯¤Ê¤Ã¤¿¡¢ ¤È»×¤Ã¤Æ¤Þ¤¹¡£¤â¤·¤«¤·¤¿¤é¡¢¤â¤Ã¤ÈÆñ¤·¤¤Íýͳ¤¬¤¢¤Ã¤Æ order ¤¬ ÍÑ°Õ¤µ¤ì¤Æ¤ë¤Î¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡£ > ¤É¤Á¤é¤Ë¤â´Þ¤Þ¤ì¤Ê¤¤ hostC ¤«¤é¤Î¥¢¥¯¥»¥¹¤Ï¤É¤¦¤Ê¤ë¤Î¤Ç¤·¤ç¤¦¤«¡© µö²Ä¤µ¤ì¤ë¤È»×¤¤¤Þ¤¹¡£order mutual-failure ¤Ê¤éµñÈݤµ¤ì¤Þ¤¹¡£ # order mutual-failure #¡¡¡¡¡Äallow ¤Ë»ØÄꤵ¤ì¡¢deny ¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¥Û¥¹¥È¤Î¤ßµö²Ä¡£¤½¤ì°Ê³°¤ÏµñÈÝ¡£ |
¤Ê¤Î¤Ç¡¢ ºåÂç¤Ïµö²Ä¤¹¤ë¤±¤É¡¢ºåÂç¤Î¹©³ØÉô¤À¤±¤ÏµñÈݤ·¡¢¤Ê¤ª¤«¤Ä ·²ÇÏÂç¤ÏÃƤ¯¤±¤É¡¢·²ÇÏÂ繩³ØÉô¤À¤±¤Ïµö²Ä¤¹¤ë ¤È¤¤¤¦ÀßÄê¤Ï̵Íý¤¸¤ã¤Ê¤¤¤«¤È»×¤Ã¤Æ¤Þ¤¹¡£²¾¤Ë¤Ç¤¤ë¤È¤·¤Æ¤â¡¢ 2¤Ä¤Ëʬ¤±¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤è¤Í¡£ÊѤʤΡ£ |
¤µ¤Ã¤½¤¯¡¢¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ >¤ó¡Á¡¢¤³¤ì¤â¤É¤¦¤â¡Ä²¿¤«°ã¤¦¤è¤¦¤Ê¡£ ¤¢¤Ã¡¢´Ø·¸¤Ê¤¤¤«¤âÃΤì¤Ê¤¤¤±¤É¡¢Àµ³Î¤Ë°úÍѤ·¤È¤¤Þ¤¹¤Í¡Ê¶ì¾Ð¡Ë >order ord >µö²Äʸ¤ÈµñÈÝʸ¤ò¥Á¥§¥Ã¥¯¤¹¤ë½çÈÖ¤ò»ØÄꤹ¤ë¡£ >"deny,allow"¤ò»ØÄꤹ¤ë¤È¡¢ºÇ½é¤ËµñÈÝ¥¨¥ó¥È¥ê¤ò¥Á¥§¥Ã¥¯¤¹¤ë¡£ >µñÈݥꥹ¥È¤Èµö²Ä¥ê¥¹¥È¤ÎξÊý¤Ë´Þ¤Þ¤ì¤ë¥µ¡¼¥Ð¡¼¤Ïµö²Ä¤¹¤ë¡£ >"allow,deny"¤ò»ØÄꤹ¤ë¤È¡¢ºÇ½é¤Ëµö²Ä¥¨¥ó¥È¥ê¤ò¥Á¥§¥Ã¥¯¤¹¤ë¡£ >ξÊý¤Ë´Þ¤Þ¤ì¤ë¥µ¡¼¥Ð¡¼¤ÏµñÈݤ¹¤ë¡£ >"mutual-failure"¤ò»ØÄꤹ¤ë¤È¡¢µö²Ä¥ê¥¹¥ÈÃæ¤Î¥Û¥¹¥È¤Ëµö²Ä¤òÍ¿¤¨¡¢ >µñÈݥꥹ¥ÈÃæ¤Î¥Û¥¹¥È¤òµñÈݤ·¡¢¤½¤ì¤é°Ê³°¤Ë¤Ä¤¤¤Æ¤ÏµñÈݤ¹¤ë¡£ 68user¤µ¤ó¤ÎÀâÌÀ¤Èapache¤Î¥Þ¥Ë¥å¥¢¥ë¤ò¸«¤ë¤È¡¢ ¤¹¤¯¤Ê¤¯¤È¤â¡¢"mutual-failure"¤ÎÀâÌÀ¤Ï¡¢ ξÊý¤Ë´Þ¤Þ¤ì¤ëÉôʬ¤Ë¤Ä¤¤¤ÆÀµ³Î¤µ¤ò·ç¤¤¤Æ¤Þ¤¹¤Í¡£ °Ê²¼¤Ë¤Ä¤¤¤Æ±þÅú¤¹¤ëÁ°¤Ë¡¢¤Á¤ç¤Ã¤È³Îǧ¤Ê¤ó¤Ç¤¹¤±¤É¡¢ >¾å¤Î2¤Ä¤Î order ¤òµÕ¤Ë¤¹¤ë¤È¡¢¤É¤Î¥Û¥¹¥È¤«¤é¤â >¸«¤é¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢²¼¤Ë´Ø¤·¤Æ¤Ï¡¢¡Ö¤É¤Î¥Û¥¹¥È¤«¤é¤â¸«¤¨¤Æ¤·¤Þ¤¦¡£¡× ¤Î´Ö°ã¤¤¤È¤¤¤¦¤³¤È¤Ï¤Ê¤¤¤Î¤Ç¤·¤ç¤¦¤«¡© |
> ¤³¤ì¤Ï¡¢²¼¤Ë´Ø¤·¤Æ¤Ï¡¢¡Ö¤É¤Î¥Û¥¹¥È¤«¤é¤â¸«¤¨¤Æ¤·¤Þ¤¦¡£¡× > ¤Î´Ö°ã¤¤¤È¤¤¤¦¤³¤È¤Ï¤Ê¤¤¤Î¤Ç¤·¤ç¤¦¤«¡© ¤¢¡¢´Ö°ã¤¤¤Ç¤¹¡£ ¡Öµö²Ä¤·¤¿¥Û¥¹¥È°Ê³°¤ÏµñÈݡפʤé order deny,allow ¤ò order allow,deny ¤Ë¤¹¤ë¤È¡¢¡ÖÁ´ÉôµñÈݡפˤʤäƤ·¤Þ¤¤¡¢ ¡ÖµñÈݤ·¤¿¥Û¥¹¥È°Ê³°¤Ïµö²Ä¡×¤Ê¤é order allow,deny ¤ò order deny,allow ¤Ë¤¹¤ë¤È¡¢¡ÖÁ´Éôµö²Ä¡×¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¡¢¤Ç¤¹¤Í¡£ > "mutual-failure"¤ÎÀâÌÀ¤Ï¡¢ > ξÊý¤Ë´Þ¤Þ¤ì¤ëÉôʬ¤Ë¤Ä¤¤¤ÆÀµ³Î¤µ¤ò·ç¤¤¤Æ¤Þ¤¹¤Í¡£ ¤ó¡Á¡¢ÉÔÀµ³Î¤È¤Ï¸À¤¨¤Ê¤¤¤«¤â¤·¤ì¤Ê¤¤¤±¤É¡¢ÉÔ¿ÆÀڤǤϤ¢¤ê¤Þ¤¹¤Í¡£ mutual-failure ¤Ç¤â allow,deny ¤Î½ç¤Ëɾ²Á¤µ¤ì¡¢allow ¤Ë¥Þ¥Ã¥Á¤·¤¿¤È¤·¤Æ¤â ¤½¤Î¼¡¤Ë deny ¤Ë¤Ä¤¤¤Æɾ²Á¤µ¤ì¡¢¤½¤³¤Ç¥Þ¥Ã¥Á¤·¤¿¤éµñÈÝ¡¢¤Ã¤Æ¤³¤È¤Ç¤¹¡£ ¤½¤¦¤¤¤¦¤³¤È¤ò http://japache.infoscience.co.jp/japanese_1_3/manual/mod/mod_access.html#order allow¤Èdeny¾õÂÖ¤¬É¾²Á¤µ¤ì¤ë¤É¤ó¤Ê¾ì¹ç¤Ç¤â¡¢"short-circuiting"¤Ï¸ºß¤·¤Þ¤»¤ó¡£ ¤Ï¸À¤Ã¤Æ¤ë¤ó¤Ç¤·¤ç¤¦¤±¤É¡¢¤â¤È¤â¤È order ¤Ã¤Æ¤¤¤¦»ÅÁȤߤ¬¤ï¤«¤ê¤Ë¤¯¤¤¤Î¤Ë¡¢ ¥Ø¥Ü¤¤Ìõ¤Î¤»¤¤¤Ç ¤µ¤é¤Ë¤ï¤±¤Î¤ï¤«¤é¤ó¤³¤È¤Ë¡£ |
>¤¢¡¢´Ö°ã¤¤¤Ç¤¹¡£ ¤è¤«¤Ã¤¿¡£ ¤³¤ì¤¬°ã¤Ã¤¿¤é¡¢¤Þ¤¿ºÇ½é¤«¤éÍý²ò¤·Ä¾¤·¤Ë¤Ê¤ë¤È¤³¤í¤Ç¤·¤¿¡Ê¶ì¾Ð¡Ë >¥Ø¥Ü¤¤Ìõ¤Î¤»¤¤¤Ç ¤µ¤é¤Ë¤ï¤±¤Î¤ï¤«¤é¤ó¤³¤È¤Ë¡£ ¤¢¤Ã¡¢³Îǧ¤·¤¿¤Î¤Ï¡¢ >Only those hosts which appear on the allow list and >do not appear on the deny list are granted access. ¤ÎÊý¤À¤Ã¤¿¤Î¤Ç¡¢¤³¤ì¤Ê¤éÌäÂê¤Ê¤¤¤Ç¤¹¤è¤Í¡£ Àè¤Î²óÅú¤ËÌá¤ê¤Þ¤¹¡£ >> ¤É¤Á¤é¤Ë¤â´Þ¤Þ¤ì¤Ê¤¤ hostC ¤«¤é¤Î¥¢¥¯¥»¥¹¤Ï¤É¤¦¤Ê¤ë¤Î¤Ç¤·¤ç¤¦¤«¡© >µö²Ä¤µ¤ì¤ë¤È»×¤¤¤Þ¤¹¡£ ¤Ê¤ë¤Û¤É¡¢¤ä¤Ï¤ê¥Ç¥Õ¥©¥ë¥È¤Ïµö²Ä¤Ê¤ó¤Ç¤¹¤Í¡£ >¡¡¡Ödeny ¤Ë¥Þ¥Ã¥Á¤·¤Æ¤â¡¢¤½¤Î¸å allow ¤Ë¥Þ¥Ã¥Á¤·¤¿¾ì¹ç¤Ï¡¢±ÜÍ÷¤òµö²Ä¤¹¤ë¡× ɾ²Á¤¬¸å¤ÎÊý¤¬Í¥À褹¤ë¤è¤¦¤Ê´¶¤¸¤Ï¤¢¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢¤É¤¦¤â¤è¤¯Ê¬¤«¤é¤Ê¤«¤Ã¤¿¤Î¤Ç¤¹¡£ >ºåÂ礫¤é¤ÏÃƤ¯¤±¤É¡¢ºåÂç¤Î¹©³ØÉô(ŬÅö)¤«¤é¤Î¤ßµö²Ä¤¹¤ë¾ì¹ç allow ¤« deny ¤É¤Á¤é¤«¤¬¾ï¤Ë from all ¤Ê¤é¡¢¤â¤Ã¤ÈÊ̤λØÄê¤Î»ÅÊý¤¬¤¢¤ë¤À¤í¤¦¤·¡¢ ¤Ê¤ó¤È¤Ê¤¯¡¢¤³¤¦¤¤¤¦»È¤¤Êý¤ò¹Í¤¨¤Æ¤ë¤Î¤«¤Ê¡Ä¡¢¤È»×¤Ã¤¿¤â¤Î¤Ç¡¢ ¤½¤ÎÁ°¤Ë¤É¤Á¤é¤Ë¤â¸½¤ì¤Ê¤¤ hostC ¤Î¼è¤ê°·¤¤¤ò¤ª»Ç¤¤¤·¤Þ¤·¤¿¡£ >¡¡ºåÂç¤Ïµö²Ä¤¹¤ë¤±¤É¡¢ºåÂç¤Î¹©³ØÉô¤À¤±¤ÏµñÈݤ·¡¢¤Ê¤ª¤«¤Ä >¡¡·²ÇÏÂç¤ÏÃƤ¯¤±¤É¡¢·²ÇÏÂ繩³ØÉô¤À¤±¤Ïµö²Ä¤¹¤ë >¤È¤¤¤¦ÀßÄê¤Ï̵Íý¤¸¤ã¤Ê¤¤¤«¤È»×¤Ã¤Æ¤Þ¤¹¡£ ¤Ê¤ë¤Û¤É¡¢¤½¤¦¤Ç¤¹¤Í¡£ ¤³¤³¤Þ¤Ç¤Ï¡¢¹Í¤¨¤Æ¤Ê¤«¤Ã¤¿¡Ê¶ì¾Ð¡Ë 68user ¤µ¤ó¤Î²óÅú¤òÆɤó¤Ç¤¤¤Æ¡¢¤Õ¤È»×¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢ ¼ÂºÝ¤Ë¤Ï¡¢allow list ¤È deny list ¤¬¤¢¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢ Î㤨¤Ð allow list ¤À¤±¤¬¤¢¤Ã¤Æ¡ÊÃê¾ÝŪ¤Ê°ÕÌ£¤Ç¡Ë¡¢ ¤³¤Î list ¤ÏºÇ½é¤ÏÁ´¥Û¥¹¥È¤¬µÍ¤Þ¤Ã¤Æ¤ë¡£ ¤½¤·¤Æ¡¢allow »ØÎá¤Ï¡¢¤³¤³¤Ë»ØÄꤵ¤ì¤¿¥Û¥¹¥È¤òÄɲä·¡¢ deny »ØÎá¤Ï¡¢»ØÄꤵ¤ì¤¿¥Û¥¹¥È¤ò¤³¤³¤«¤éºï½ü¤¹¤ë¡£ ¤Þ¤¿¡¢order ¤Ë¤è¤ëɾ²Á½ç½ø¤Ï¡¢¤³¤ÎÄɲᢺï½ü¤ÎÆ°ºî½ç½ø¤Ç¡¢ ºÇ¸å¤Ë list ¤Ë»Ä¤Ã¤¿¥Û¥¹¥È¤Î¤ß¤òµö²Ä¤¹¤ë¡£ ¤Ê¤ª¡¢mutual-failure ¤Î¾ì¹ç¤Ï¡¢list ¤òºÇ½é¤Ë¶õ¤Ë¤·¡¢ allow »ØÎá¤òÀè¤Ëɾ²Á¤¹¤ë¡£ ¡ÊµÕ¤Ë¡¢ºÇ½é¤Ï¶õ¤Î deny list ¤À¤±¤¬¤¢¤ë¤È¤·¤Æ¤âƱ¤¸¡Ë ¤È¤¤¤¦¤è¤¦¤Ë¹Í¤¨¤ë¤Ã¤Æ¤Î¤Ï¡¢¤É¤¦¤Ç¤·¤ç¤¦¤«¡© Apache 1.3 ¤«¤é¡¢deny,allow ¤Ë¤Ï(½é´ü¾õÂÖ¤ÏOK¤Ç¤¹)¤È¤«¡¢ allow,deny ¤Ë¤Ï (½é´ü¾õÂÖ¤ÏFORBIDDEN¤Ç¤¹) ¤Ã¤ÆÃí¼á¤¬ ¤Ä¤¤¤¿¤«¤é¡¢¤Á¤ç¤Ã¤ÈŪ¥Ï¥º¥ì¤«¤Ê¡Ä¡© |
> ¤È¤¤¤¦¤è¤¦¤Ë¹Í¤¨¤ë¤Ã¤Æ¤Î¤Ï¡¢¤É¤¦¤Ç¤·¤ç¤¦¤«¡© good ¤Ç¤¹¡£¡Ä¤È»×¤Ã¤¿¤é¡¢ > Apache 1.3 ¤«¤é¡¢deny,allow ¤Ë¤Ï(½é´ü¾õÂÖ¤ÏOK¤Ç¤¹)¤È¤«¡¢ > allow,deny ¤Ë¤Ï (½é´ü¾õÂÖ¤ÏFORBIDDEN¤Ç¤¹) ¤Ã¤ÆÃí¼á¤¬ > ¤Ä¤¤¤¿¤«¤é¡¢ ¤¦¡¢ÃΤé¤Ê¤«¤Ã¤¿¡£¤È¤¤¤¦¤³¤È¤Ï¡¢ > order allow,deny > allow from hostA > deny from hostB > ¤È¤¤¤¦ÀßÄ꤬¤¢¤Ã¤¿¾ì¹ç¡¢¤É¤Á¤é¤Ë¤â´Þ¤Þ¤ì¤Ê¤¤hostC ¤«¤é¤Î¥¢¥¯¥»¥¹¤Ï > ¤É¤¦¤Ê¤ë¤Î¤Ç¤·¤ç¤¦¤«¡© ¾¯¤Ê¤¯¤È¤â apache 1.3 ¤Ç¤Ï `ÉÔ²Ä' ¤Ç¤¹¤Í¡£¼Â¸³¤·¤Æ¤ß¤¿¤È¤³¤í¡¢ µñÈݤµ¤ì¤Þ¤·¤¿¡£ ¤È¤¤¤¦¤³¤È¤Ï¡¢order allow,deny ¤Ã¤Æ order mutual-failure ¤È Ʊ¤¸°ÕÌ£¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤ó¤¸¤ã¤Ê¤¤¤Î¤«¤Ê¤¡¡Ä¡£order allow,deny ¤Î ½é´ü¾õÂÖ¤ò FORBIDDEN ¤Ë¤·¤Æ¡¢¤Ê¤Ë¤«¤¦¤ì¤·¤¤¤³¤È¤¬¤¢¤ë¤ó¤À¤í¤¦¤«¡£ |
¤Ï¤¸¤á¤Þ¤·¤Æ¡£¤¤¤¤Ê¤ê¤Ç¤¹¤¬¼ÁÌ䤬¤¢¤ê¤Þ¤¹¡£ aliases¥Õ¥¡¥¤¥ë¤ò>newaliases¤Ç¹¹¿·¤·¤è¤¦¤È¤·¤¿ºÝ¡¢ °Ê²¼¤Î¤è¤¦¤Ê¥á¥Ã¥»¡¼¥¸¤¬½Ð¤Æ¡¢aliases¤¬µ¡Ç½¤·¤Þ¤»¤ó¡£ root@xxx>newaliases WARNING: writable directory /var WARNING: writable directory /var/spool WARNING: writable directory /usr/ucblib WARNING: writable directory /usr/ucblib dbm map "Alias0": unsafe map file /usr/ucblib/aliases WARNING: cannot open alias database /usr/ucblib/aliases Cannot create database for alias file /usr/ucblib/aliases: No such device ¥Ç¥£¥ì¥¯¥È¥ê¤Î¥¢¥¯¥»¥¹¸¢¤Ê¤É¤ò¤¤¤¸¤Ã¤Æ¤ß¤¿¤Î¤Ç¤¹¤¬¡¢¤¦¤Þ¤¯¤¤¤ ¤Þ¤»¤ó¤Ç¤·¤¿¡£ ¤â¤·¡¢²ò¤ëÊý¤¬¤¤¤é¤Ã¤·¤ã¤¤¤Þ¤·¤¿¤é¤è¤í¤·¤¯¤ª´ê¤¤Ãפ·¤Þ¤¹¡£ |
goo ¤Ç ¡Önewaliases warning writable dbm¡×¤Ç¸¡º÷¤·¤Þ¤·¤¿¡£ http://www.swlab.csce.kyushu-u.ac.jp/~kazunori/install/sendmail.phtml http://www.sigma.tosho-u.ac.jp:8082/inet/newsos.6.1/sendmail-8.9.3/README ¤Ç¤¹¤«¤Í¡£ ¤È¤³¤í¤Ç¤µ¡¢OS ¤Î¼ïÎà¤È¥Ð¡¼¥¸¥ç¥ó¡¢sendmail ¤Î¥Ð¡¼¥¸¥ç¥ó¤¯¤é¤¤ ½ñ¤¤Þ¤·¤ç¤¦¤è¡£UNIX ¤Ã¤Æ¸À¤Ã¤Æ¤â¤¤¤í¤¤¤í¤¢¤ë¤ó¤À¤«¤é¡¢uname -mrs ¤È¤« uname -mrsp ¤Î·ë²Ì¤ò½ñ¤¯¤Î¤Ï¡¢´ðËÜÃæ¤Î´ðËܤÀ¤È»×¤¤¤Þ¤¹¡£ |
¤Ê¤ó¤À¤«¡¢¤Þ¤¿Ê¬¤«¤é¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡Ê¶ì¾Ð¡Ë ¥¢¥¯¥»¥¹¤·¤Æ¤¤¿ host ¤ËÂФ·¤Æ¡¢ deny,allow ¤Î¾ì¹ç¤Ï¡¢½é´ü¾õÂÖ¤ò OK ¤Ë¤·¤Æ¡¢ allow,deny ¤Ê¤é¡¢½é´ü¾õÂÖ¤ò FORBIDDEN ¤Ë¤¹¤ë¡£ allow ʸ¤Ë¤³¤Î host ¤¬´Þ¤Þ¤ì¤ë¤È¾õÂÖ¤ò OK ¤Ë½ñ¤´¹¤¨¤Æ¡¢ deny ʸ¤Ë¤³¤Î host ¤¬´Þ¤Þ¤ì¤ë¤È¾õÂÖ¤ò FORBIDDEN ¤Ë½ñ¤´¹¤¨¤ë¡£ ¤³¤ì¤é¤Îɾ²Á¤¬½ª¤ï¤Ã¤¿¸å¤Î host ¤Î¾õÂÖ¤¬¥¢¥¯¥»¥¹²ÄÈݤò·è¤á¤ë¡£ ¤È¤¤¤¦¤³¤È¤Ê¤é¡¢¤½¤ì¤Ç¤â¤¤¤¤¤ó¤À¤±¤É¡¢ ¤³¤ì¤Ç¤Ï³Î¤«¤Ë mutual-failure ¤Î¸ºß°ÕµÁ¤¬¤Ê¤¤¤Ç¤¹¤Í¡Ä¡©¡©¡© access.conf ¤Ç¤Î allow from all ¤È¤«¤ÎÀßÄê¤Ï¡¢ .htaccess ¤Ç¤Î¥¢¥¯¥»¥¹À©¸Â¤¬¤Ê¤¤¾ì¹ç¤Ë¤·¤«°ÕÌ£¤Ï¤Ê¤¤¤ó¤Ç¤¹¤è¤Í¡© |
> ¤È¤¤¤¦¤³¤È¤Ê¤é¡¢¤½¤ì¤Ç¤â¤¤¤¤¤ó¤À¤±¤É¡¢ ¤È¤¤¤¦¤³¤È¤À¤È»×¤¤¤Þ¤¹¡£¤¤¤Þ¤¤¤ÁǼÆÀ¤Ç¤¤Þ¤»¤ó¤¬¡¢¤³¤Î¥µ¡¼¥Ð¤Ç order allow,deny deny from hoge.ac.jp (²Í¶õ¤Î¥É¥á¥¤¥ó) ¤È¤¹¤ë¤È (¡áallow¤ò½ñ¤«¤Ê¤¤) Á´ÉôÃƤ«¤ì¤Þ¤·¤¿¤Î¤Ç¡£ > access.conf ¤Ç¤Î allow from all ¤È¤«¤ÎÀßÄê¤Ï¡¢ > .htaccess ¤Ç¤Î¥¢¥¯¥»¥¹À©¸Â¤¬¤Ê¤¤¾ì¹ç¤Ë¤·¤«°ÕÌ£¤Ï¤Ê¤¤¤ó¤Ç¤¹¤è¤Í¡© access.conf ¤Ç AllowOverride Limit(or All) ¤È¤·¤Æ¤¤¤ë¤Ê¤é access.conf ¤Ç allow/deny ÀßÄê¤ò¤·¤Æ¤¤¤Æ¤â .htaccess ¤ÇÀßÄê¤ò¾å½ñ¤²Äǽ access.conf ¤Ç AllowOverride None(or Limit°Ê³°) ¤È¤·¤Æ¤¤¤ë¤Ê¤é .htaccess ¤ÇÀßÄê¤ò¾å½ñ¤ÉԲġ£access.conf ¤Ç¤Î allow/deny ÀßÄ꤬͸ú¡£ ¤Ç¤¹¤«¤Í¡£ |
>¤È¤¤¤¦¤³¤È¤À¤È»×¤¤¤Þ¤¹¡£¤¤¤Þ¤¤¤ÁǼÆÀ¤Ç¤¤Þ¤»¤ó¤¬¡¢ ¤Ê¤ë¤Û¤É¡¢¡ÊǼÆÀ¤Ç¤¤Ê¤¤¤È¤¤¤¦ÅÀ¤Ç¡Ë¤È¤ê¤¢¤¨¤º¡¢¤½¤¦Íý²ò¤·¤Æ¤ª¤¤Þ¤¹¡£ >access.conf ¤Ç AllowOverride Limit(or All) ¤È¤·¤Æ¤¤¤ë¤Ê¤é ¤¢¤Ã¡¢¤½¤¦¤Ç¤¹¤Í¡£¤½¤ì¤¬Á°Äó¤Ç¤¹¤Í¡£ ¤Þ¤À¤Á¤ç¤Ã¤È¤ÎÉôʬ¤â¤¢¤ê¤Þ¤¹¤¬¡Ê¶ì¾Ð¡Ë ¤È¤Ë¤«¤¯¡¢¤É¤¦¤â¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤·¤¿m(_ _)m |
sendmail8.8.6°Ê¹ß¡¢aliases¥Õ¥¡¥¤¥ëÅù¤¬¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤À¤È¡¢newaliases¤Ç¥¨¥é¡¼¤Ë¤Ê¤ë°Ù¡¢¥ê¥ó¥¯¤òÄ¥¤êľ¤·¤Þ¤·¤¿¡£ °Ê²¼¤Î¼ê½ç¤Ç¤¦¤Þ¤¯¤¤¤¤Þ¤·¤¿¡£ cd /usr/ucblib rm aliases aliases.dir aliases.pag cd /var/ucblib mv aliases aliases.dir aliases.pag /usr/ucblib ln -s /usr/ucblib/aliases /var/ucblib/aliases ln -s /usr/ucblib/aliases.dir /var/ucblib/aliases.dir ln -s /usr/ucblib/aliases.pag /var/ucblib/aliases.pag ¡ä¤È¤³¤í¤Ç¤µ¡¢OS ¤Î¼ïÎà¤È¥Ð¡¼¥¸¥ç¥ó¡¢sendmail ¤Î¥Ð¡¼¥¸¥ç¥ó¤¯¤é¡ä¤¤½ñ¤¤Þ¤·¤ç¤¦¤è¡£UNIX ¤Ã¤Æ¸À¤Ã¤Æ¤â¤¤¤í¤¤¤í¤¢¤ë¤ó¤À¤«¤é¡¢ ¡äuname -mrs¤È¤« uname -mrsp ¤Î·ë²Ì¤ò½ñ¤¯¤Î¤Ï¡¢´ðËÜÃæ¤Î´ðËܤÀ¡ä¤È»×¤¤¤Þ¤¹¡£ ËÜÅö¤Ë°ìÈÖÂç»ö¤Ê»ö¤ò½ñ¤¯¤Î¤ò˺¤ì¤Æ¤¤¤Þ¤·¤¿¡£¤´¤á¤ó¤Ê¤µ¤¤¡£ ¤É¤¦¤â¤´ÌÂÏǤª¤«¤±¤·¤Þ¤·¤¿¡¦¡¦¡¦¡£ |
¥Ñ¥½¥³¥ó¤ò¤¿¤Á¤¢¤²¤ë¤È¡¢dfs.vxd¤¬¤¢¤ê¤Þ¤»¤ó¤È¤«¤Ç¤Æ¤½¤³¤Ç »ß¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£²¿¤«¥¡¼¥Ü¡¼¥É¤ò²¡¤¹¤È¼¡¤Î²èÌÌ(¤¤¤Ä¤â¤Î ¥Ç¥¹¥¯¥È¥Ã¥×¤Î²èÌÌ)¤Ë¤Ê¤ê¤Þ¤¹¡£¤½¤ì°Ê¹ß¤Ï¡¢ÌäÂꤢ¤ê¤Þ¤»¤ó¡£ dfs.vxd¤È¤Ï¤¤¤Ã¤¿¤¤²¿¼Ô¤Ê¤Î¤Ç¤·¤ç¤¦¤«¡© ¤â¤·ÃΤäƤ¤¤ëÊý¤¬¤¤¤Þ¤·¤¿¤é¡¢¶µ¤¨¤Æ¤¯¤À¤µ¤¤¡£ |
°ìÈÌ¤Ë "pwd" ¤È "echo $cwd" ¤ÏƱ¤¸¤È¤µ¤ì¤Þ¤¹¤¬¡¢´Ä¶¤Ë ¤è¤Ã¤Æ¤Ï°ã¤¦·ë²Ì¤òÀ¸¤¸¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ ¤³¤ì¤ÏÀâÌÀ¤·¤Ë¤¯¤¤¤Î¤Ç¡¢Îã¤ò¤¢¤²¤Æ¤ß¤Þ¤¹¡£ ¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤¬ /home/username ¤Ç¡¢¤³¤³¤Ë bin ¤È¤¤¤¦ ̾Á°¤Î¥Ç¥£¥ì¥¯¥È¥ê /work/bin ¤Ø¤Î¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯ (bin@ -> /work/bin) ¤¬¤¢¤Ã¤¿¤È¤·¤Þ¤¹¡£¤³¤³¤Ç cd bin ¤È¤·¤Æ ¥Ç¥£¥ì¥¯¥È¥ê¤ò°ÜÆ°¤¹¤ë¤È¡¢echo $cwd ¤È¤·¤¿¾ì¹ç¤Ï /home/username/bin ¤Èɽ¼¨¤µ¤ì¤ë¤Î¤Ç¤¹¤¬¡¢pwd ¤È¤¹¤ë¤È /work/bin ¤Èɽ¼¨¤µ¤ì¤Þ¤¹¡£ |
¥Æ¥¹¥ÈÅê¹Æ¤Ç¤¹ ̵»ë¤·¤Æ²¼¤µ¤¤ |
½é¤á¤ÆÅê¹Æ¤·¤Þ¤¹¡£ ¤Á¤ç¤Ã¤È¼ÁÌ䤬¤¢¤ë¤Î¤Ç¤¹¤¬ Prel¤ò»È¤¤Sendmail¤Ç¥á¡¼¥ë¤òÁ÷¤ëCGI¤òºî¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤½¤³¤Ç ¡¢BCC¤Þ¤¿¤ÏCC¤ÇÊ£¿ô¤Î¥á¡¼¥ëÀè¤ò»ØÄꤷ¤ÆÁ÷¤ë¾ì¹ç ¥á¡¼¥ë¥¢¥É¥ì¥¹¤Î·Ò¤®Éôʬ¤Ï¡¢È¾³Ñ¥¹¥Ú¡¼¥¹¤Ç¶èÀÚ¤êÅϤ¹¤Î¤Ç¤·¤ç¤¦¤«¡© º¡¤Ø¤ó¤Î¥×¥í¥»¥¹¤¬È½¤é¤Ê¤¯º¤¤Ã¤Æ¤ª¤ê¤Þ¤¹ ¤è¤í¤·¤±¤ì¤Ð¶µ¤¨¤Æ失¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡© |
> °ìÈÌ¤Ë "pwd" ¤È "echo $cwd" ¤ÏƱ¤¸¤È¤µ¤ì¤Þ¤¹¤¬¡¢´Ä¶¤Ë > ¤è¤Ã¤Æ¤Ï°ã¤¦·ë²Ì¤òÀ¸¤¸¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ ¤Ê¤ë¤Û¤É¡¢³Î¤«¤Ë¤½¤¦¤Ç¤¹¤Í¡£ÊÙ¶¯¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤·¤«¤·¡¢pwd ¤ÎÀâÌÀ¤Ç¡Öecho $cwd¤ÈƱ¤¸¡×¤È¤¤¤¦¤Î¤â¤Ò¤É¤¤¤Ê¤¡¡Ä¡£ > ¥á¡¼¥ë¥¢¥É¥ì¥¹¤Î·Ò¤®Éôʬ¤Ï¡¢È¾³Ñ¥¹¥Ú¡¼¥¹¤Ç¶èÀÚ¤êÅϤ¹¤Î¤Ç¤·¤ç¤¦¤« ¥«¥ó¥Þ(,)¤Ç¤¹¡£ Cc: foo@bar.com,hoge@fuga.com,abc@def.ac.jp ¤È¤¹¤ì¤Ð¤¤¤¤¤ó¤Ç¤¹¤¬¡¢¹Ô¤¬Ä¹¤¯¤Ê¤ê¤¹¤®¤ë¤Ê¤é¡¢ Cc: foo@bar.com, (Ⱦ³Ñ¶õÇò)hoge@fuga.com, (Ⱦ³Ñ¶õÇò)abc@def.ac.jp ¤È¡¢folding ¤·¤Þ¤¹¡£¾Ü¤·¤¯¤Ï ftp://ftp.iij.ad.jp/pub/RFC/rfc822.txt ¤Î ¡Ö3.1.1. LONG HEADER FIELDS¡×¤¢¤¿¤ê¤ò¤É¤¦¤¾¡£ |
ÁᮤΠRE¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹ ÊÙ¶¯¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ Áᮻ¤Æ¤ß¤Þ¤¹ |
½é¤á¤Æ·Ç¼¨ÈĤòÍøÍѤµ¤»¤Æ¤¤¤¿¤À¤¤Þ¤¹¡£ POP3¥µ¡¼¥Ð¡¼¤Î¥á¡¼¥ë¤òWWW¥Ö¥é¥¦¥¶¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÇÆɤ߽Ф¹CGI¤òºî¤Ã¤Æ¤¤¤Þ¤¹¡£¡ÖPOP3¥¯¥é¥¤¥¢¥ó¥È¤òºî¤Ã¤Æ¤ß¤è¤¦(1)(2)(3)¡×¤òÍøÍѤµ¤»¤Æ¤¤¤¿¤À¤¡¢¤¢¤é¤«¤¿¤Î½èÍý¤¬¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ ´¶¼Õ¤¤¤¿¤·¤Þ¤¹¡£ ÁᮤμÁÌä¤Ç¤¹¤¬¡¢SubjectµÚ¤ÓźÉÕ¥Õ¥¡¥¤¥ë¤Î¥Õ¥¡¥¤¥ë̾¤ËÆüËܸ줬»È¤ï¤ì¤Æ¤¤¤ë¤È¤¡¢nkf¤Ç¤ÎÊÑ´¹¤ò¾È²ñ¤µ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢ntf¤ÎÁȤ߹þ¤ß¤ÎÊýË¡¤Ë¤Ä¤¤¤Æ¥¢¥É¥Ð¥¤¥¹¤¤¤¿¤À¤±¤ì¤Ð¹¬¤»¤Ç¤¹¡£ Linux¤Ç¤Ïnkf17¤ò¤¦¤Þ¤¯¥¤¥ó¥¹¥È¡¼¥ë¤Ç¤¤¿¡Ê¤Þ¤À»î¸³¤Ï¤·¤Æ¤¤¤Ê¤¤¡Ë¤Î¤Ç¤¹¤¬¡¢WindowsNT¤Ø¤Î¥¤¥ó¥¹¥È¡¼¥ëÊýË¡¤¬¤ï¤«¤ê¤Þ¤»¤ó¡£ WindowsNT¤Ç¤âLinux¤ÈƱ¤¸¤è¤¦¤Ë¤Ç¤¤ë¤Î¤Ç¤·¤ç¤¦¤«¡£ Makefile¤Îshar:°Ê¹ß¤Î½ñ¤´¹¤¨¤Ç¤¤¤±¤ë¤Î¤Ç¤·¤ç¤¦¤«¡£¤½¤ì¤È¤âSystem¥³¡¼¥ë¤Çnkf32.exe¤ò»È¤¦¤Î¤Ç¤·¤ç¤¦¤«¡£ ½é¿´¼Ô¤ËÌÓ¤ÎÀ¸¤¨¤¿¥ì¥Ù¥ë¤Ç¤ä¤Ã¤Æ¤¤¤Þ¤¹¡£ÊýË¡¤Þ¤¿¤Ï¤½¤ÎÊýË¡¤¬¤«¤«¤ì¤¿URL¤¬¤¢¤ê¤Þ¤·¤¿¤é¶µ¤¨¤Æ¤¯¤À¤µ¤¤¡£ |
nkf¤Ë¤Ä¤¤¤Æ¤Î¼ÁÌä¡ÊÄÉ¿¡Ë ¤³¤Á¤é¤Î¥·¥¹¥Æ¥à¤ÎÀâÌÀ¤¬È´¤±¤Æ¤¤¤Þ¤·¤¿¡£ WindowsNT4 IIS3 perl5.005_03¡ÊActivePerl Build 513¡Ë+DBI+DBD-ODBC ¤Ç¤¹¡£ |
> WindowsNT¤Ç¤âLinux¤ÈƱ¤¸¤è¤¦¤Ë¤Ç¤¤ë¤Î¤Ç¤·¤ç¤¦¤«¡£ C¥³¥ó¥Ñ¥¤¥é¤Ï¤ª»ý¤Á¤Ç¤¹¤«? ¤¢¤ë¤Ê¤é¥½¡¼¥¹»ý¤Ã¤Æ¤¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ì¤Ð¤¤¤¤¤Ç¤·¤ç¤¦¤±¤É¡¢ ¥³¥ó¥Ñ¥¤¥é¤¬¤Ê¤¤¤Ê¤é¥Ð¥¤¥Ê¥ê¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ì¤Ð¤¤¤¤¤Ç¤¹¡£ ¤¿¤À¡¢nkf -m ¤Ç¤ä¤ë¤Ê¤é ¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë·Ðͳ¤Ç¥Ç¡¼¥¿¤ò¼õ¤±ÅϤ·¤¿¤ê¡¢ IPC::Open2 ¤Ê¤É¤ò»È¤ï¤Ê¤¤ã¤¤¤±¤Ê¤¤¤Î¤ÇÌÌÅݤǤ¹¡£Ëè²ó¥×¥í¥»¥¹¤òµ¯Æ°¤·¤Ê¤±¤ì¤Ð ¤¤¤±¤Ê¤¤¤Î¤Ç½Å¤¯¤Ê¤ê¤Þ¤¹¤·¡£ ¤Ê¤Î¤Ç¡¢http://www.cc.rim.or.jp/~ikuta/mime_pls/ ¤ò»ý¤Ã¤Æ¤¤Æ require 'mimer.pl'; $data = &mimedecode($data,'EUC'); ¤È¤·¤¿Êý¤¬¤¤¤¤¤È»×¤¤¤Þ¤¹¡£ http://X68000.startshop.co.jp/~68user/cgi-bin/wwwboard.cgi?log=1999-09-16 ¤Ë½ñ¤¤¤¿ MIME ¥¨¥ó¥³¡¼¥É¤ÎµÕ¤Ç¤¹¤Í¡£ |
ÆÍÁ³¸½¤ì¤Æ¼ÁÌä¤Ð¤«¤ê¤Ç¿½¤·Ìõ¤¢¤ê¤Þ¤»¤ó º£°ì¤Ä¶µ¤¨¤Æ¤¯¤À¤µ¤¤ ¥Ç¡¼¥¿¡¼¤òʬ³ä¤·¤Æ¼«Æ°¤ÇÆɤ߼è¤ë°Ù¤Ë¤Ï¡© ¤¿¤È¤¨¤Ð£±£°£°£°¤Î¥Ç¡¼¥¿¤¬Æþ¤Ã¤¿@DATA¤¬¤¢¤ë¤È¤·¤Þ¤¹ ¤³¤Î¥Ç¡¼¥¿¡¼¤ò£±£°£°¤º¤Ä½ç¤ËÆɤ߼è¤ë¤Ë¤Ï read,seek¤ò»È¤Ã¤ÆÆɤ߼è¤ë»ö¤Ï¡¢²Äǽ¤À¤È»×¤¤¤Þ¤¹¤¬ ½ç¤Ë£±£°£°¤º¤Ä£±£°£°£°¤Î¥Ç¡¼¥¿¤òÆɤ߼è¤ë¤Ë¤Ï¤É¤Î¤è¤¦¤ÊÊýË¡¤¬¤¢¤ë¤Ç¤·¤ç¤¦¤« ¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹ |
> ¤¿¤È¤¨¤Ð£±£°£°£°¤Î¥Ç¡¼¥¿¤¬Æþ¤Ã¤¿@DATA¤¬¤¢¤ë¤È¤·¤Þ¤¹ ÇÛÎó @DATA ¤Ë´û¤Ë¥Ç¡¼¥¿¤¬Æþ¤Ã¤Æ¤¤¤ë¤Î¤Ç¤¹¤«? ¤Ê¤é splice ¤ò »È¤¨¤Ð¤¤¤¤¤Ç¤·¤ç¤¦¡£¡Ö100¤º¤Ä½ç¤Ë¡×*²¿¤ò¤·¤¿¤¤¤Î¤«* ¤¬ ¤ï¤«¤é¤Ê¤¤¤Î¤Ç¡¢¤³¤ì°Ê¾å¤Ï¤Ê¤ó¤È¤â¸À¤¨¤Þ¤»¤ó¡£ read/seek ¤Ï¡¢ÇÛÎó @DATA ¤¬¶õ¤Ç¡¢¥Õ¥¡¥¤¥ë¤«¤é @DATA ¤Ë Æɤ߹þ¤à¤È¤¤Ë»È¤¦¤â¤Î¤Ç¤¹¡£¤Ç¤â¤Þ¤¡ perl ¤Ê¤é¡¢¤ï¤¶¤ï¤¶ read/seek ¤Î¤è¤¦¤ÊÄã¥ì¥Ù¥ë¤Ê´Ø¿ô¤ò»È¤¦É¬ÍפϤʤ¤¤Ç¤·¤ç¤¦¡£ |
¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹ ¼Â¤Ï¡¢Á°¤Î¼ÁÌä¤È´ØÏ¢¤¬¤¢¤ê¤Þ¤·¤Æ ¥Ç¡¼¥¿¡¼¤ËÆþ¤Ã¤¿¥á¡¼¥ë¥¢¥É¥ì¥¹¤òBCC¤ÇÁ÷¿®¤¹¤ëºÝ¤Ë °ìÅ٤˿¤¯¤Î¥Ç¡¼¥¿¡¼¤òÂǤÁ¹þ¤à¤È¥µ¡¼¥Ð¤ËÉéô¤¬³Ý¤«¤ë¤È»×¤¤ ¤¿¤È¤¨¤Ð£±£°£°¤º¤ÄÆɤ߹þ¤ó¤ÇÁ÷¿®¤ò¤·¤¿¤¤¤È¤¤¤¦¤ï¤±¤Ê¤ó¤Ç¤¹ °ìÈÌŪ¤Ë°ìÅ٤ˤɤ줯¤é¤¤¤ÎBCC¤À¤Ã¤¿¤éÃÙ¤ì¤ë¤ó¤Ç¤·¤ç¤¦¤«¡© ¥µ¡¼¥Ð¤Î¥ì¥¹¥Ý¥ó¥¹¤â´Ø·¸¤¬¤¢¤ë¤È»×¤¤¤Þ¤¹¤¬¡¦¡¦¡£ |
@DATA ¤Ë1000¸ÄÆþ¤Ã¤Æ¤¤¤Æ¡¢100¤º¤ÄÁ÷¿®¤·¤¿¤¤¤Ê¤é while (@DATA){ @addrs = splice(@DATA,0,100); $CC = join(",\n ",@addrs); ¥á¡¼¥ëÁ÷¿® } ¤Ç¤¤¤¤¤Ç¤¹¡£ ¤Ç¤â¤Þ¤¡¡¢1000 Á÷¤ë¤Ê¤é¤½¤ì¤Ê¤ê¤Ë»þ´Ö¤¬¤«¤«¤ê¤Þ¤¹¤¬¡¢Éé²Ù¤¬¤¦¤ó¤Ì¤ó¤È ¤¤¤¦¤è¤ê¤Ï¡¢SMTP¥µ¡¼¥Ð¤¬ DNS(MX)°ú¤¤¤Æ Áê¼êÀè¤Ë connect ¤·¤Æ SMTP ¤·¤ã¤Ù¤Ã¤Æ ËÜʸ¤òÁ÷¤ë ¤Î¤Ë»þ´Ö¤¬¤«¤«¤ë¡¢¤È¤¤¤¦´¶¤¸¤Ç¤·¤ç¤¦¤«¡£¤Û¤È¤ó¤É¤ÏÁê¼ê¤òÂԤäƤë¤À¤±¤Ç¤¹¡£ Ê̤Ë1000¸Ä Bcc ¤¬½ñ¤¤¤Æ¤¢¤Ã¤Æ¤â¡¢Ê¹Ԥ·¤Æ1000¤Î¥³¥Í¥¯¥·¥ç¥ó¤ò Ä¥¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤Î¤Ç(SMTP¥µ¡¼¥Ð¤Î»ÅÍͤˤâ¤è¤ê¤Þ¤¹¤¬)¡¢¥Þ¥·¥ó¤Î Éé²Ù¤Ï¤½¤ó¤Ê¤Ëµ¤¤Ë¤·¤Ê¤¯¤Æ¤â¤¤¤¤¤Ç¤·¤ç¤¦¡£ ¤½¤ì¤Ç¤â1000¤Ï¿¤¤¤È»×¤¦¤Ê¤é¡¢100¤´¤È¤Ëʬ³ä¤¹¤ì¤Ð¤¤¤¤¤ó¤¸¤ã ¤Ê¤¤¤ó¤Ç¤·¤ç¤¦¤«¡£¤¿¤À¤·¥Æ¥¹¥È¤ÏÆþÇ°¤Ë¤ä¤Ã¤Æ²¼¤µ¤¤¡£ |
68user¤µ¤ó ½Å¤Í½Å¤Í¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹ ½½Ê¬¸¡Æ¤¡õ¥Æ¥¹¥È¤·¤Æ¤ä¤Ã¤Æ¤ß¤Þ¤¹ ËÜÅö¤Ë¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹ |
ËÜÆüÉÕ¤±¤ÇÉüµ¢¤·¤Þ¤·¤¿ ¤Ç¤â¡¢CGI¤Î»È¤¨¤Ê¤¤alles¤Ç¤·¤¿¡£(w ¥Æ¥ì¥Û¤ÎÅÔ¹ç¾å¡£°ìǯ¤Ï¥¢¥ì¥¹¤Ç¤¹¡£ webpage¤ò°ì±þºî¤ë¤Î¤Ç¡¢¥ê¥ó¥¯¤µ¤»¤Æ²¼¤µ¤¤¤Í¡£ ͧã¤Îwebspace¤ò¼Ú¤ê¤ëͽÄê¤Ê¤Î¤Çcgi¤ÏÄü¤é¤á¤Æ¤Þ¤»¤ó¡ª¡ª ¤¢¤È¡¢¼ÁÌä¤Ê¤ó¤Ç¤¹¤±¤É¡¢systemfile¤Îddlem.dll ¤Ã¤Æ¥Õ¥¡¥¤¥ë¤¬µ¯Æ°¤¹¤ë¤¿¤Ó¤Ë¡¢¡Ö²õ¤ì¤Æ¤¤¤Þ¤¹¡×¤È¸À¤¦É½¼¨¤¬½Ð¤Þ¤¹ ÉÔÅÔ¹ç¤Ï¤Ê¤¤¤ó¤Ç¤¹¤±¤É¡¢¤³¤ì¤Ã¤ÆÂç»ö¤Ê¥Õ¥¡¥¤¥ë¤Ç¤¹¤«¡© ¥¹¥¥ã¥ó¤«¤±¤Æ¤â¥¨¥é¡¼¤¬½Ð¤Ê¤¤¤ó¤Ç¤¹¤±¤É¡£ |
¤Ï¤¸¤á¤Þ¤·¤Æ¡£¤ß¤Î¤ë¤È¿½¤·¤Þ¤¹¡£¤´¶µ¼ø´ê¤¨¤ì¤Ð¹¬¤¤¤Ç¤¹¡£ ´Ä¶¡Ë¡¡WindowsNT4 SunOS 4 ¾åµ´Ä¶¤Ç¡¢NT¤Î¥í¥°¥Õ¥¡¥¤¥ë¤«¤é°ìÄê»þ´ÖÆâ(00:00:00¡Á05:59:59)¤Î¹Ô¤À¤±¤ò Ãê½Ð¤·¤¿¤¤¤Î¤Ç¤¹¤¬¡¢¾ò·ï¤Ë¤¢¤¦¡Ê¤³¤Î¾ì¹ç¥«¥é¥à¤¬¤Þ¤Á¤Þ¤Á¤Ê¤Î¤Ç¡¢ÂçÂΤΠ¥«¥é¥à°ÌÃ֤ǥҥåȤ¹¤ë¡Ë¹Ô¤òÃê½Ð¤¹¤ëÊýË¡¤Ï¤¢¤ê¤Þ¤¹¤Ç¤·¤ç¤¦¤«¡£ ¡Úsplit -l ¤À¤È¹Ô¿ô¤¬¤ï¤«¤Ã¤Æ¤¤¤Ê¤¤¤È¤À¤á¤Ê¤Î¤Ç¤³¤Î¾ì¹ç¤ÏÅö¤Æ¤Ï¤Þ¤é¤Ê¤¤¤Ç¤¹¤è¤Í¡Û script¤òÁȤ⤦¤È»×¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢¥Ò¥ó¥È¤Ë¤Ê¤ë¥µ¥ó¥×¥ë¤ò¤ß¤Ä¤±¤ë¤³¤È¤¬¤Ç¤¤º¡¢ Äü¤á¤Æ¤·¤Þ¤¤¤Þ¤·¤¿(^^;)¡£ ¤È¤ê¤¢¤¨¤º¡¢¾ò·ï¤Ë¤¢¤¦¹Ô¤À¤±¤òhead¡Ê¶öÁ³¡¢¥Õ¥¡¥¤¥ë¤ÎƬ¤«¤é¤À¤Ã¤¿¤Î¤Ç¡Ë¤Ç ¼è¤ê½Ð¤·¤ÆµÞ¾ì¤ò¤·¤Î¤®¤Þ¤·¤¿¡£¤¿¤À¡¢º£²ó¤Ïvi¤Ç³«¤¤¤¿¤Î¤Ç¤¹¤¬¡¢Â礤¤¥µ¥¤¥º¤Î¾ì¹ç ¤³¤ÎÊýË¡¤Ç¤Ï̵Íý¤¬À¸¤¸¤Æ¤¯¤ë¤È»×¤¦¤Î¤Ç¤¹¡£ ²¿¤«Â¾¤Ë¤¤¤¤¼ê¤À¤Æ¤Ï¤Ê¤¤¤â¤Î¤Ç¤·¤ç¤¦¤«¡£¡£¡£ |
¤à¤¥¡¢¤Ê¤¼¤«ÈËÀ¹¤·¤Æ¤¤¤ë¡Ä¡£ > webpage¤ò°ì±þºî¤ë¤Î¤Ç¡¢¥ê¥ó¥¯¤µ¤»¤Æ²¼¤µ¤¤¤Í¡£ ¤É¤¦¤¾¡Á¡£ > ¤È¡¢¼ÁÌä¤Ê¤ó¤Ç¤¹¤±¤É¡¢systemfile¤Îddlem.dll ¤Ã¤Æ¥Õ¥¡¥¤¥ë¤¬ ËÍ¤Ï UNIX ´Ä¶¤·¤«»ý¤Ã¤Æ¤Ê¤¤¤ó¤Ç¤¹¤è¡£¤¢¤È°ìÈÌÏÀ¤È¤·¤Æ¡¢¼ÁÌ䤹¤ë¤È¤¤Ï ¼«Ê¬¤Î´Ä¶ (OS̾+¥Ð¡¼¥¸¥ç¥ó¤Ê¤É) ¤Ïɬ¤º½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£Windows ¤Ê¤é http://www.so-net.ne.jp/ClubHouse/room/pc_scramble_win/pc_scramble_win.html ¤Ç¼ÁÌ䤹¤ì¤Ð¤¤¤¤¤ó¤Ç¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡£ > °ìÄê»þ´ÖÆâ(00:00:00¡Á05:59:59)¤Î¹Ô¤À¤±¤òÃê½Ð¤·¤¿¤¤ % grep '0[0-5]:[0-5][0-9]:[0-5][0-9]' logfile ¤Ç¤Ï¥À¥á¤Ç¤¹¤«? |
¤É¤¦¤â¤¹¤ß¤Þ¤»¤ó¡£½é¿´¼Ô¤ß¤¿¤¤¤Ê¤³¤È¤ò¤·¤Æ¤·¤Þ¤¤¤Þ¤·¤Æ¡£°Ê¸åµ¤¤ò¤Ä¤±¤Þ¤¹ |
¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ ¤É¤¦¤·¤Ægrep¤ÎÀµµ¬É½¸½¤Ëµ¤¤Å¤«¤Ê¤«¤Ã¤¿¤Î¤À¤í¤¦¤ÈÃѤº¤«¤·¤¤¸Â¤ê¤Ç¤¹¡£ ÌÀÆü¡¢¸¡Æ¤¤·¤Æ¤ß¤Þ¤¹¡£ |
>> WindowsNT¤Ç¤âLinux¤ÈƱ¤¸¤è¤¦¤Ë¤Ç¤¤ë¤Î¤Ç¤·¤ç¤¦¤«¡£ ÁᮤΥ¢¥É¥Ð¥¤¥¹¡¢¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£Áᮻ¤Æ¤ß¤Þ¤¹¡£ £Ã¤â¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢ºÆ¥³¥ó¥Ñ¥¤¥ë¤ÎÊýË¡¤â»î¤·¤Æ¤ß¤Þ¤¹¡£ º£¸å¤È¤â¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£ |
¤Ï¤¸¤á¤Þ¤·¤Æ¡£¤ß¤Ä¤ë¤È¿½¤·¤Þ¤¹¡£¤´¶µ¼ø´ê¤¨¤ì¤Ð¹¬¤¤¤Ç¤¹¡£ ´Ä¶¡Ë¡¡Windows98 º£¡¢JSWDK¤òÍѤ¤¤ÆJSP¤äServlet¤ò»î¤·¤Æ¤¤¤ë¤Î¤Ç¤¹¤¬¡¢ HTTP¥×¥í¥È¥³¥ë¤òÄ̤¸¤Æ¤É¤Î¤è¤¦¤Ê¥Ç¡¼¥¿¤¬Á÷¼õ¿®¤µ ¤ì¤Æ¤¤¤ë¤«¤ï¤«¤ê¤Þ¤»¤ó¡£¥×¥í¥¥·¡¼¥µ¡¼¥Ð¡¼¤ò¤ò¼«ºî¤·¤Æ ¥ê¥¯¥¨¥¹¥È¤ò½ÐÎϤ¹¤ì¤Ð¤¤¤¤¤è¤¦¤Êµ¤¤¬¤·¤Þ¤¹¤¬¡¢´û¤Ë¤³¤Î ¤è¤¦¤ÊÍÑÅӤ˻ÈÍѤǤ¤ë¥½¥Õ¥È¤¬Â¸ºß¤¹¤ë¤È»×¤¤¤Þ¤¹¡£ ¤É¤Ê¤¿¤«¤´Â¸ÃΤʤ¤¤Ç¤·¤ç¤¦¤«¡© ¤è¤í¤·¤¯¤ª´ê¤¤¤·¤Þ¤¹¡£ |
HTTP Proxy ¼«ÂΤϤ½¤ó¤Ê¤ËÆñ¤·¤¯¤Ê¤¤¤Î¤Ç¡¢¤¤¤í¤¤¤í¤¢¤ë¤ó¤Ç¤·¤ç¤¦¤¬¡¢ »ÄÇ°¤Ê¤¬¤éËͤ϶ñÂÎŪ¤Ê¥½¥Õ¥È¥¦¥§¥¢Ì¾¤òÃΤê¤Þ¤»¤ó¡£ # proxy ¤Ã¤Æ¸À¤¦¤È¤¹¤°¥¢¥ó¥°¥é·Ï¤Ë¤Ê¤Ã¤Á¤ã¤¦¤Î¤¬·ù¤Ê¤Î¤Ç¡¢ # õ¤·¤¿¤³¤È¤¬¤Ê¤¤¡£ mm ¤µ¤ó¤¬¤´Â¸ÃΤ«¤â¤·¤ì¤Ê¤¤¤Î¤Ç¡¢¼ÁÌ䤵¤ì¤Æ¤ß¤Æ¤Ï¤¤¤«¤¬¤Ç¤·¤ç¤¦¤«¡£ http://www2s.biglobe.ne.jp/~cru/library/zddbbs/cgi-bin/wwwboard.cgi |
¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ £í£í¤µ¤ó¤Ë¼ÁÌ䤷¤Æ¤ß¤Þ¤¹¡£ |
68user ¤µ¤ó¡¢¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤·¤¿¡£ % grep '0[0-5]:[0-5][0-9]:[0-5][0-9]' logfile ¤Ç̵»ö³ºÅö¥í¥°¤òÃê½Ð¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤·¤¿¡£ ¤È¤³¤í¤Ç¡¢SunOS5.6¤Ëverup¤·¤¿¤Î¤Ç¤¹¤¬¡¢ "vipw"¤¬Íø¤«¤Ê¤¯¤Ê¤ê¤Þ¤·¤¿¡£shadow¤Ïvi¤ÇÊÔ½¸µÚ¤Óbackup¤â ¤È¤ì¤Æ¤¤¤ë¤Î¤Ç¤¹¤¬¡¢"vipw"¤È¤¹¤ë¤È"etc/passwd is busy"¤È¤Ê¤ê ÊÔ½¸ÉÔ²Äǽ¤Ê¤Î¤Ç¤¹¡£º£¤Ï"vi"¤ÇÊÔ½¸¤·¤Æ¤¤¤Þ¤¹¡£ crontab¤¬¾å¼ê¤¯Æ¯¤¤¤Æ¤Ê¤¤¤Î¤Ç¤·¤ç¤¦¤«¡© |
Solaris ¤Î vipw ¤ÎÆ°ºî¤ÏÃΤê¤Þ¤»¤ó¤¬¡¢°ìÈÌÏÀ¤È¤·¤Æ `busy' ¤È¸À¤ï¤ì¤¿¤Ê¤é ¡¦Á°¤Ë¼Â¹Ô¤·¤¿ vipw ¤Î¥×¥í¥»¥¹¤¬»Ä¤Ã¤Æ¤¤¤Ê¤¤¤«¡¢ps -ef | grep vipw ¤Ç³Îǧ ¡¦fuser /etc/passwd ¤Ç¡¢/etc/passwd ¤ò¥ª¡¼¥×¥ó¤·¤ÃÊü¤·¤Î¥×¥í¥»¥¹¤òÄ´¤Ù¤ë ¡¦/tmp ¤ä /var/tmp ¤Ê¤É¤Ë¥í¥Ã¥¯¥Õ¥¡¥¤¥ë (¤È¤¤¤¦¤è¤ê¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤«¤Ê) ¤¬ »Ä¤Ã¤Æ¤¤¤Ê¤¤¤«Ä´¤Ù¤ë ( BSD ¤Ê¤é /etc/ptmp* ¤È¤« /etc/pw* ¤Ê¤É) ¡¦truss vipw ¤Ç¡¢¤É¤³¤Ç¤É¤Î¥Õ¥¡¥¤¥ë¤òÆɤó¤À¸å¥¨¥é¡¼¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤«Ä´¤Ù¤ë ¤Æ¤Ê¤È¤³¤í¤Ç¤·¤ç¤¦¤«¡£ > crontab¤¬¾å¼ê¤¯Æ¯¤¤¤Æ¤Ê¤¤¤Î¤Ç¤·¤ç¤¦¤«¡© ËÍ¤Ï Solaris ¥Þ¥·¥ó¤Çroot ¸¢¸Â¤ò»ý¤Ã¤Æ¤Ê¤¤¤Î¤Ç¤ï¤«¤ê¤Þ¤»¤ó¤¬¡¢ Solaris ¤Î vipw ¤Ã¤Æ cron ¤¬´Ø¤ï¤Ã¤Æ¤¯¤ë¤ó¤Ç¤·¤¿¤Ã¤±? |
68user ¤µ¤ó¡¢¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ ¤Á¤ç¤Ã¤È¾¤Î»Å»ö¤¬Î©¹þ¤ó¤Ç¤¤¤Þ¤¹¤¬¡¢³Îǧ¤·¤Æ¤ß¤Þ¤¹¡£ |
¤ªÊ¹¤¤·¤¿¤¤¤ó¤Ç¤¹¤¬¡¢¤¤¤¯¤Ä¤«¥É¥é¥¤¥Ö¤¬¤¢¤ë¤ó¤Ç¤¹¤¬¡¢º£¡¢¤½¤ì¤¾¤ì¡¢OS¤Ïwinddow95,window98, Linux¤Ë¤·¤¿¤¤¤Ç¤¹¤¬¡¢¤Ç¤¤Þ¤¹¤Ç¤·¤ç¤¦¤«¡£¥Þ¥·¥ó¤ÏFujitsu¤ÎDos/V¤Ç¤¹¡£¤´Â¸¤¸¤Ê¤é¡¢¶µ¤¨¤Æ¤¤¤¿¤À¤±¤Þ¤»¤ó¤«¡£ ¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£ |
¤ªÊ¹¤¤·¤¿¤¤¤ó¤Ç¤¹¤¬¡¢¤¤¤¯¤Ä¤«¥É¥é¥¤¥Ö¤¬¤¢¤ë¤ó¤Ç¤¹¤¬¡¢º£¡¢¤½¤ì¤¾¤ì¡¢OS¤Ïwinddow95,window98, Linux¤Ë¤·¤¿¤¤¤Ç¤¹¤¬¡¢¤Ç¤¤Þ¤¹¤Ç¤·¤ç¤¦¤«¡£¥Þ¥·¥ó¤ÏFujitsu¤ÎDos/V¤Ç¤¹¡£¤´Â¸¤¸¤Ê¤é¡¢¶µ¤¨¤Æ¤¤¤¿¤À¤±¤Þ¤»¤ó¤«¡£ ¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£ |
> º£¡¢¤½¤ì¤¾¤ì¡¢OS¤Ïwinddow95,window98, Linux¤Ë¤·¤¿¤¤¤Ç¤¹¤¬¡¢ º£ winddow95,window98, Linux ¤¬Æþ¤Ã¤Æ¤ë¤ó¤Ç¤¹¤«? ¤³¤ì¤«¤é winddow95,window98, Linux ¤òÆþ¤ì¤¿¤¤¤ó¤Ç¤¹¤«? > ¤Ç¤¤Þ¤¹¤Ç¤·¤ç¤¦¤«¡£ ¿ʬ¤Ç¤¤ë¤È»×¤¤¤Þ¤¹¤¬¡¢Windows ¤â Linux ¤â»È¤Ã¤Æ¤Ê¤¤¤Î¤Ç ³Î¤«¤Ê¤³¤È¤Ï¸À¤¨¤Þ¤»¤ó¡£ http://www.so-net.ne.jp/ClubHouse/room/pc_scramble/pc_scramble.html ¤Ç¶µ¤¨¤Æ¤â¤é¤¨¤ë¤Ç¤·¤ç¤¦¡£ |
68user¤µ¤ó ¤É¤¦¤â¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤·¤¿¡£¤¤¤Þ¡¢OS¤Ïwindows95¤À¤±¤Ç¤¹¡£ ¤³¤ì¤«¤é¡¢window98¤ÈLinux¤òÆþ¤ì¤¿¤¤¤Ç¤¹¡£ ¶µ¤¨¤Æ¤¤¤¿¤À¤¤¤¿URL¤â¸«¤Æ¤ß¤Þ¤¹¡£ |
2000ǯ1·î1Æü¤Ë¥»¥Ã¥È¤·¤¿¤¤¤Î¤Ç¤¹¤¬¡© |
"vipw"¤È¤¹¤ë¤È"etc/passwd file is busy"¤Î·ï /etc ¤Ë¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤¬»Ä¤Ã¤Æ¤¤¤Þ¤·¤¿¡£"temp"¤Çõ¤·¤Æ¤¤¤Þ¤·¤¿¤¬¡¢"tmp"¤Ç¤·¤¿¡£ ¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤·¤¿¡£ ¸½ºß¡¢Turbolinux4.2 ¥¤¥ó¥¹¥È¡¼¥ë¤ÇʳƮ¤·¤Æ¤ª¤ê¤Þ¤·¤¿¡£¤Ê¤ó¤È¤«Æ°¤¯¤è¤¦¤Ë¤Ê¤Ã¤¿¤â¤Î¤Î¡¢ »þ´Öɽ¼¨¤¬Çò¤¯¤Ê¤ê¸«¤¨¤Ê¤¤¾õÂ֤Ǥ¹¡£¤Ê¤«¤Ê¤«¥µ¡¼¥Ð¹½ÃۤޤǤÎÆ»¤Î¤ê¤Ï±ó¤¤¤è¤¦¤Ç¤¹¡£¡£¡£ |
̾Á°¤ò¡Ö¤ä¤Þ¤¤¡×¸µ¡Ê»³°æ¡¡¹§Íº¡Ë¤ËÊѤ¨¤Þ¤·¤¿¡£ ¤Þ¤¿¤Þ¤¿£È£Å£Ì£Ð°ÍÍê¤Ç¤¹¡£¤´Â¸¤¸¤ÎÊý¤¬¤ª¤é¤ì¤Þ¤·¤¿¤é¶µ¤¨¤Æ¤¯¤À¤µ¤¤¡£ PERL¤ËDBI¤ÈDBD(ODBC)¤òÁȤ߹þ¤â¤¦¤È¤·¤Æ¤¤¤Þ¤¹¡£ PERL5.003¤Î¤È¤¤Ï¤¦¤Þ¤¯¤¤¤Ã¤Æ¤¤¤¿¤Î¤Ç¤¹¤¬ º£²ó5.00503¤Ç¤Ï¤¦¤Þ¤¯¤¤¤¤Þ¤»¤ó¡£ PERL¡ÊAPi522e.exe¡Ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¸å¡¢ DBI¡ÊDBI-1.13.tar.gz¡Ë¤òŸ³«¤·¥¤¥ó¥¹¥È¡¼¥ë¤Þ¤Ç¤Ï¤¦¤Þ¤¯¤¤¤¤Þ¤·¤¿¡£ DBD¡ÊDBD-ODBC-0.22.tar.gz¡Ë¤òŸ³«¤·¤¿¸å¡¢ perl makefile.pl ¤ÏÀµ¾ï¤Ë¼Â¹Ô¤Ç¤¤¿¤Î¤Ç¤¹¤¬¡¢ nmake¡¡¤Ç°Ê²¼¤Î¥¨¥é¡¼¤¬¤Ç¤Æ¥¹¥È¥Ã¥×¤·¤Æ¤·¤Þ¤¤¤Þ¤¹¡£ cl.exe -c -IC:/Perl/site/lib/auto/DBI -Od -MD -DNDEBUG -GX -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DPERL_CAPI -Od -MD -DNDEBUG -GX -DVERSION=\"0.22\" -DXS_VERSION=\"0.22\" -IC:\Perl\lib\CORE dbdimp.c dbdimp.c C:/Perl/site/lib/auto/DBI\DBIXS.h(403) : warning C4005: 'DBIS' : ¥Þ¥¯¥í¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿¡£ dbdimp.c(31) : error C2106: '=' : º¸¤Î¥ª¥Ú¥é¥ó¥É¤¬¡¢º¸ÊÕÃͤˤʤäƤ¤¤Þ¤»¤ó¡£ NMAKE : fatal error U1077: 'cl.exe' : ¥ê¥¿¡¼¥ó ¥³¡¼¥É '0x2' Stop. ¤Ê¤ª¡¢»ÈÍѴĶ¤Ï Windows 4.0 Server ServisePack3 Visual C++ Version 5.0 ¤Ç¤¹¡£ ¥Á¥§¥Ã¥¯¥Ý¥¤¥ó¥ÈÅù¤¬¤¢¤ê¤Þ¤·¤¿¤é¶µ¤¨¤Æ¤¯¤À¤µ¤¤¡£ |
»Ï¤á¤Þ¤·¤Æ¡£ ¼ÁÌ䤬¤¢¤ê¤Þ¤¹¡£ C¸À¸ì(CGI)¤Ç¥Õ¥¡¥¤¥ë¥í¥Ã¥¯´Ø¿ô¤òºî¤í¤¦¤È»×¤¦¤Î¤Ç¤¹¤¬ ¤É¤¦¤ä¤é¥Ç¥£¥ì¥¯¥È¥ê¤¬¤¢¤ë¡¤¤Ê¤¤¤ÇȽÄꤹ¤ì¤Ð ¥×¥í¥»¥¹¤¬³ä¤ê¹þ¤ó¤Ç¤¯¤ë³ÎΨ¤â¾¯¤Ê¤¤¤é¤·¤¤¤Î¤Ç mkdir¡¤rmdir¡¤sleep´Ø¿ô¤ò»È¤Ã¤Æºî¤í¤¦¤È»×¤¤¤Þ¤¹¡£ ¤Ç¤È¤ê¤¢¤¨¤º³Æ´Ø¿ô»È¤Ã¤Æ¤ß¤¿¤é ¡Ö¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤¬¤Æ¡¼¤®¤µ¤ì¤Æ¤Ø¤ó¤è¡¼¡ªÃí°Õ¤·¤Ê¤Ï¤ì¡Á¡× ¤ß¤¿¤¤¤Ê¥¨¥é¡¼¤¬½Ð¤Æ¤Þ¤¤¤ê¤Þ¤·¤¿¡£ »ä¤ÏWindows´Ä¶¤·¤«¤Ê¤¤¤Î¤Ç FTP¥¢¥Ã¥×¥í¡¼¥É->¥³¥ó¥Ñ¥¤¥ë¤È¤¤¤¦¼êÃʤǺîÀ®¤·¤Æ¤Þ¤¹¡£ Windows´Ä¶¤Ê¤é"direct.h"¤ò¥¤¥ó¥¯¥ë¡¼¥É ¤¹¤ì¤ÐÎɤ¤¤Î¤Ç¤¹¤¬¤É¤¦¤ä¤é°ã¤¦(¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤¬¤Ê¤¤)¤ß¤¿¤¤¤Ç¤¹¡£ ¥µ¡¼¥Ð¡¼¤Î/usr/include¥Ç¥£¥ì¥¯¥È¥ê¤È¤«ÇÁ¤±¤ë¤Î¤Ç¿§¡¹Ãµ¤·¤Æ¤ß¤Þ¤·¤¿¤¬ ¤ª¼ê¾å¤²¾õÂ֤Ǥ¹¡£¡£¡£ ¤½¤³¤Çmkdir¡¤rmdir¡¤sleep´Ø¿ô¤Î¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤Î°ÌÃÖ¤ò ¶µ¤¨¤Æ¤Û¤·¤¤¤Î¤Ç¤¹¤¬¡Ä # ¥¤¥ó¥¯¥ë¡¼¥É¤·¤Ê¤¯¤Æ¤âÆ°¤¯¤³¤È¤ÏÆ°¤¯¤ó¤Ç¤¹¤¬¡£¡£¡£µ¤¤ËÆþ¤é¤Ê¤¤¤Ç¤¹¡£ ¥µ¡¼¥Ð¡¼¤¬²¿¤¿¤éUNIX¤«²¿¤¿¤éLinux¤«¤¬¤ï¤«¤ê¤Þ¤»¤ó¡£ BSD·ÏUNIX(???)(Linux???)¤¿¤Ö¤ó²¿¤¿¤éLinux¤À¤È»×¤¦¤Î¤Ç¤¹¤¬¡£¡£ gcc¤Î¥Ð¡¼¥¸¥ç¥ó¤Ï(gcc -v¤·¤¿·ë²Ì) >Reading specs from /usr/lib/gcc-lib/i386-pc-linux->gnulibc1/egcs-2.91.66/specs >gcc version egcs-2.91.66 19990314 (egcs-1.1.2 release) ¤Ê¤ó¤«¾ðÊ󤬾¯¤Ê¤¹¤®¤Þ¤¹¤±¤É ¡Ö¼«Ê¬¤Î´Ä¶¤Ç¤Ï¤³¤¦¤Ç¤¹¤è¡£¡× ¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£ ¤è¤í¤·¤¯¤ª´ê¤¤¤·¤Þ¤¹¡£ |
¥µ¡¼¥Ð¾å¤Ë¡¢Windows¤Ç°µ½Ì¤·¤¿lzh¥Õ¥¡¥¤¥ë¤ò¤ª¤¤¤Æ¡¢¥µ¡¼¥Ð¤Ç²òÅष¤¿¤¤¤Î¤Ç¤¹¤¬¡¢ xxx% lha x filename(°µ½Ì¥Õ¥¡¥¤¥ë̾) ¤È¡¢¥³¥Þ¥ó¥É¤òÆþÎϤ·¤Æ¤â¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£ lha¤Î¥Ä¡¼¥ë¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«Ä´¤Ù¤ëÊýË¡Åù¤¬¤ï¤«¤ê¤Þ¤»¤ó¡£¶µ¤¨¤Æ¤¤¤¿¤À¤±¤Þ¤¹¤Ç¤·¤ç¤¦¤«¡© |
¤Ï¤¸¤á¤Þ¤·¤Æ¡£ c¸À¸ì´Ø¿ô¤ÇÄ´¤Ù¤Æ¤¤¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ »Ò¥×¥í¥»¥¹¤òÀ¸À®¤¹¤ëspawn´Ø¿ô¤È¤¤¤¦¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ ¤³¤Î´Ø¿ô¤¬¡¢POSIX½àµò¤Î´Ø¿ô¤«Èݤ«¤ò¤´Â¸ÃΤÎÊý ¤¤¤é¤Ã¤·¤ã¤¤¤Þ¤¹¤«¡© ¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£ |
¤Ï¤¸¤á¤Þ¤·¤Æ¡£ c¸À¸ì´Ø¿ô¤ÇÄ´¤Ù¤Æ¤¤¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ »Ò¥×¥í¥»¥¹¤òÀ¸À®¤¹¤ëspawn´Ø¿ô¤È¤¤¤¦¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ ¤³¤Î´Ø¿ô¤¬¡¢POSIX½àµò¤Î´Ø¿ô¤«Èݤ«¤ò¤´Â¸ÃΤÎÊý ¤¤¤é¤Ã¤·¤ã¤¤¤Þ¤¹¤«¡© ¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£ |
¤Ï¤¸¤á¤Þ¤·¤Æ¡£ c¸À¸ì´Ø¿ô¤ÇÄ´¤Ù¤Æ¤¤¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ »Ò¥×¥í¥»¥¹¤òÀ¸À®¤¹¤ëspawn´Ø¿ô¤È¤¤¤¦¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ ¤³¤Î´Ø¿ô¤¬¡¢POSIX½àµò¤Î´Ø¿ô¤«Èݤ«¤ò¤´Â¸ÃΤÎÊý ¤¤¤é¤Ã¤·¤ã¤¤¤Þ¤¹¤«¡© ¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£ |
> 2000ǯ1·î1Æü¤Ë¥»¥Ã¥È¤·¤¿¤¤¤Î¤Ç¤¹¤¬¡© BIOS ¤Ç»þ´Ö¤ò¥»¥Ã¥È¤¹¤ì¤Ð¤¤¤¤¤Ç¤·¤ç¤¦¡£ > PERL¤ËDBI¤ÈDBD(ODBC)¤òÁȤ߹þ¤â¤¦¤È¤·¤Æ¤¤¤Þ¤¹¡£ ¤¦¡Á¤ó¡¢Á´Á³¤ï¤«¤é¤ó¤Ç¤¹¡£Windows´Ä¶»ý¤Ã¤Æ¤Ê¤¤¾å¤Ë¡¢¤³¤¦¤¤¤¦ ¥¨¥é¡¼¤Ã¤Æ¡¢ÂçÄñ¤Î¾ì¹ç #ifdef WIN32 ¤Î½ñ¤Ëº¤ì¤¬¸¶°ø¤À¤Ã¤¿¤ê¤¹¤ë¤ó¤Ç¡¢perl/Windows/DBI/DBD ¤ËÀºÄ̤·¤Æ¤¤¤Ê¤¤ ËͤˤϤµ¤Ã¤Ñ¤ê¤ï¤«¤ê¤Þ¤»¤ó¡£ > ¥µ¡¼¥Ð¡¼¤¬²¿¤¿¤éUNIX¤«²¿¤¿¤éLinux¤«¤¬¤ï¤«¤ê¤Þ¤»¤ó¡£ `i386-pc-linux' ¤È¤¢¤ë¤Î¤Ç Linux ¤Ê¤ó¤Ç¤·¤ç¤¦¤±¤É¡¢ OS̾¤Ï uname -a ¤Ç¤ï¤«¤ê¤Þ¤¹¡£ # ¥Ç¥£¥¹¥È¥ê¥Ó¥å¡¼¥·¥ç¥ó̾¤Ã¤Æ¤É¤¦¤ä¤Ã¤ÆÄ´¤Ù¤ë¤ó¤À¤í¤¦? > ¡Ö¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤¬¤Æ¡¼¤®¤µ¤ì¤Æ¤Ø¤ó¤è¡¼¡ªÃí°Õ¤·¤Ê¤Ï¤ì¡Á¡×¤ß¤¿¤¤¤Ê¥¨¥é¡¼ ¤È¤¤¤¦¤Î¤Ï¤¢¤êÆÀ¤Ê¤¤¤Ç¤¹¡£¥¤¥ó¥¯¥ë¡¼¥É¤·¤Ê¤¯¤Æ¤âÆ°¤¯¤È¤¤¤¦¤³¤È¤Ï ¡Ömkdir/rmdir/sleep ¤È¤¤¤¦´Ø¿ô¤ÎÀë¸À¤¬¤µ¤ì¤Æ¤¤¤Ê¤¤¡×¤È¤¤¤¦ warning (implicit declaration of function `mkdir') ¤Ç¤¹¤«¤Í¡£¥¨¥é¡¼¤ä warning ¤Ï Ìõ¤µ¤º¤½¤Î¤Þ¤Þ½ñ¤¤¤Æ²¼¤µ¤¤¡£ ¤Ç¡¢¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤¬¤ï¤«¤é¤Ê¤¤¤È¤¤Ï¡¢man ¤Ç³Îǧ¤·¤Æ²¼¤µ¤¤¡£ % man 2 mkdir % man 2 rmdir % man 3 sleep ¤È¤¹¤ë¤È¡¢ NAME¡¡mkdir - make a directory file SYNOPSIS #include <sys/stat.h> int mkdir(const char *path, mode_t mode) ¤È¤¤¤¦¾ðÊó¤¬ÆÀ¤é¤ì¤Þ¤¹¡£ > xxx% lha x filename(°µ½Ì¥Õ¥¡¥¤¥ë̾) > ¤È¡¢¥³¥Þ¥ó¥É¤òÆþÎϤ·¤Æ¤â¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£ ¡Ö¼Â¹Ô¤µ¤ì¤Ê¤¤¡×¤È¤Ï²¿¤Ç¤¹¤«? ¡ÖCommand not found¡×¤Ë¤Ê¤ë¤ó¤Ç¤¹¤«? % locate lha ¤Ç¡¢¥Õ¥¡¥¤¥ë̾¤Ë `lha' ¤ò´Þ¤à¥Õ¥¡¥¤¥ë°ìÍ÷¤¬É½¼¨¤µ¤ì¤Þ¤¹¤¬¡¢ ¤½¤ì¤Ç¤â¸«ÉÕ¤«¤é¤Ê¤¤¤Ê¤éËÜÅö¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¤ó¤Ç¤·¤ç¤¦¡£ ´ÉÍý¼Ô¤ËÍê¤à¤«¡¢¼«Ê¬¤Ç¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£ > »Ò¥×¥í¥»¥¹¤òÀ¸À®¤¹¤ëspawn´Ø¿ô¤È¤¤¤¦¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ > ¤³¤Î´Ø¿ô¤¬¡¢POSIX½àµò¤Î´Ø¿ô¤«Èݤ«¤ò¤´Â¸ÃΤÎÊý ¤¦¡¼¤ó¡¢¤ï¤«¤é¤ó¤Ç¤¹¡£FreeBSD/Solaris ¤È¤â¤Ë spawn ¤È¤¤¤¦´Ø¿ô¤Ï ¤Ê¤¤¤Î¤Ç¡¢POSIX ½àµò¤Ç¤Ï¤Ê¤¤¤È»×¤¦¤ó¤Ç¤¹¤¬¡Ä³Î¿®¤Ï¤¢¤ê¤Þ¤»¤ó¡£ |
½é¤á¤Þ¤·¤Æ¡£ ¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°¤Î´ðÁÃÃμ±¡¡ÂçÊѶ½Ì£¿¼¤¯Æɤޤ»¤Æ¤¤¤¿¤À¤¤Þ¤·¤¿¡£¤³¤ì¤«¤é¤â¤¬¤ó¤Ð¤Ã¤Æ²¼¤µ¤¤¡£ ±¢¤Ê¤¬¤é±þ±ç¤·¤Æ¤¤¤Þ¤¹¡£ |
¤É¤â¤É¤â¡£´Ö°ã¤¤¤Ê¤É¤¢¤ê¤Þ¤·¤¿¤é¡¢¤¼¤Ò¤´»ØŦ¤ª´ê¤¤¤·¤Þ¤¹¡£ |
¤Ï¤¸¤á¤Þ¤·¤Æ¡£ ¡Ö¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°¡×Æɤޤ»¤Æĺ¤¤Þ¤·¤¿¡£ ÀâÌÀ¡¢¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¶¦¤ËÂçÊÑʬ¤«¤ê¤ä¤¹¤¯¡¢ ¤¹¤°¤Ë¼«Ê¬¤Ê¤ê¤Ë±þÍѤ¹¤ë¤³¤È¤¬¤Ç¤¡¢ÂçÊѰ٤ˤʤê¤Þ¤·¤¿¡£¡°¡° ¤¿¤À¡¢°ì¤Ä¤À¤±Ê¬¤«¤é¤Ê¤«¤Ã¤¿¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ HTTP¥¯¥é¥¤¥¢¥ó¥È¤ÇPOST¥á¥½¥Ã¥É¤ËÂбþ¤·¤è¤¦¤È¤·¤¿¤Î¤Ç¤¹¤¬¡¢ $message = "name=test&mail=test&url=test&message=test\r\n"; $len = length($message); print SOCKET "POST /cgi-bin/mybbs.cgi HTTP/1.1\r\n"; print SOCKET "REFERER: ¡Êά¡Ë/cgi-bin/mybbs.cgi\r\n"; print SOCKET "Content-length: $len\r\n"; print SOCKET "\r\n"; print SOCKET $message; ¤È¤·¤¿½ê¡¢¼ÂºÝ¤Ë¤ÏPOST¤µ¤ì¤Æ¤¤¤Ê¤¤¤è¤¦¤Ê¤Î¤Ç¤¹¡£ ¤³¤ì¤Ï¼«Ê¬¤Î·Ç¼¨ÈÄ¡ÊËܤΥµ¥ó¥×¥ë¤Î¿¿»÷¤Ç¤¹¤¬¡Ë¤ËÂФ·¤Æ¤ÎPOST¤Ç¤¹¤¬¡¢ REFERER¥Á¥§¥Ã¥¯¤ÎÆþ¤é¤Ê¤¤Í§¿Í¤Î·Ç¼¨ÈĤǥƥ¹¥È¤·¤Æ¤ß¤Æ¤âPOST¤µ¤ì¤Ê¤¤¤è¤¦¤Ç¤¹¡£ ¤Î¤Ç¡¢¶²¤é¤¯¤³¤Á¤é¤Î¥¹¥¯¥ê¥×¥È¦¤Ë¸í¤ê¤¬¤¢¤ë¤È»×¤ï¤ì¤ë¤Î¤Ç¤¹¤¬¡Ä¡£ ¤Þ¤¿¡¢\r\n¤ò\r¤ä\n¤ËÊѤ¨¤Æ¤âÂÌÌܤǤ·¤¿¡£ ¤É¤³¤¬´Ö°ã¤Ã¤Æ¤¤¤ë¤Î¤Ç¤·¤ç¤¦¤«¡Ä¡©¤´¶µ¼ø失¤ì¤Ð¹¬¤¤¤Ç¤¹¡£ ¤Á¤Ê¤ß¤ËSunOS 5.6,Perl 5.004_04¤Ç¤¹¡£ |
# GET ¤¬¤Ç¤¤ë¤Î¤Ë POST ¤À¤±¤¬¤Ç¤¤Ê¤¤¤Î¤Ê¤é¡¢³°¤·¤Æ¤Þ¤¹¤¬¡Ä HTTP/1.1 ¤Ç¤Ï¡¢Host ¥Ø¥Ã¥À¤¬É¬¿Ü¤Ë¤Ê¤ê¤Þ¤¹¡£ POST /cgi-bin/mybbs.cgi HTTP/1.1\r\n Host: Áê¼êÀè¤Î¥µ¡¼¥Ð̾\r\n Content-length: $len\r\n \r\n $message ¤Ç¤É¤¦¤Ç¤¹¤«? ¤³¤ì¤¬¸¶°ø¤Ê¤é¡¢HTTP/1.0 ¤Ë¤¹¤ì¤Ð¤¦¤Þ¤¯¤¤¤¯¤Ï¤º¤Ç¤¹¡£ ¤Þ¤¿¡¢¥µ¡¼¥Ð¤Î¥ì¥¹¥Ý¥ó¥¹¤Ï¡Ö400 Bad Request¡×¤È¤Ê¤Ã¤Æ¤¤¤ë¤Ï¤º¤Ç¤¹¡£ ¤½¤ì¤Ç¤â¥À¥á¤Ê¤é¡¢ #!/usr/local/bin/perl $|=1; sysread(STDIN, $input,$ENV{CONTENT_LENGTH}); print "Content-type: text/plain\n\n"; print "$input\n"; ¤È¤¤¤¦¡¢¥Ç¡¼¥¿¤ò¼õ¤±¤Æɽ¼¨¤¹¤ë¤À¤±¤Î CGI ¤òÁê¼ê¤Ë¡¢¤¤¤í¤¤¤í »î¤·¤Æ¤ß¤Æ²¼¤µ¤¤¡£ |
¤¤¤Ä¤âÇÒ¸«¤·¤Æ¤ª¤ê¤Þ¤¹¡£¤ß¤Î¤ë¤Ç¤¹¡£(´Ä¶¡§SunOS5.6) ¤¤¤¤Ê¤ê¤ÇÂçÊÑ¿´¶ì¤·¤¤¤Î¤Ç¤¹¤¬¡¢"passwd"¤¬¼Â¹ÔÉԲĤȤʤäƤ·¤Þ¤¤¤Þ¤·¤¿¡£ µÞ¤Ë -r-sr-sr-x 3 root 96392 Feb 24 1999 nispasswd* -r-sr-sr-x 3 root 96392 Feb 24 1999 passwd* -r-sr-sr-x 3 root 96392 Feb 24 1999 yppasswd* ¤È¤Ê¤êroot¸¢¸Â¤Ç"passwd"¥³¥Þ¥ó¥É¤¬Íø¤«¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¤¡¢ chmod 555 passwd ¤Ç¥¢¥¯¥»¥¹¸¢¤òÊѹ¹¤·¤¿¤Î¤Ç¤¹¤¬¡¢ ¡Öpasswd(SYSTEM): ¡û¡û¡û¡û does not exist ¥¢¥¯¥»¥¹¸¢¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Þ¤»¤ó¡£¡×¤È¥¨¥é¡¼¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£ ¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤Ë¤¹¤ì¤Ð¤è¤¤¤Î¤Ç¤·¤ç¤¦¤«¡©¡©¡© |
> -r-sr-sr-x 3 root 96392 Feb 24 1999 passwd* ¤³¤ì¤ÇÀµ¤·¤¤¤Ç¤¹¡£suid/sgid ¤¬Î©¤Ã¤Æ¤Ê¤¤¤È root °Ê³°¤Î¥æ¡¼¥¶¤¬ ¥Ñ¥¹¥ï¡¼¥ÉÊѹ¹¤Ç¤¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£¤È¤ê¤¢¤¨¤º % chmod 6555 /usr/bin/passwd ¤Ç¸µ¤ËÌᤷ¤Æ²¼¤µ¤¤¡£¤½¤ì¤Ç¤âÆ°¤«¤Ê¤¤¤Ê¤é¡¢¤½¤Î¤È¤¤Î¾É¾õ¤ò½ñ¤¤¤Æ²¼¤µ¤¤¡£ |
¸«Æ¨¤·¤Æ¤¿¡Ä spawn·Ï¤Î´Ø¿ô¤Ï¡¢MS-DOS¤ËÆÃͤΤâ¤Î¤Ç¤¹¡£ |
²¼µ¥³¥Þ¥ó¥É¤Ç¤âƱ¤¸¥¨¥é¡¼¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ ºòÆü¡¢¥ê¥ó¥¯¤ò³°¤·¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢¡¢¡¢¤½¤ì¤¬¸¶°ø¤Ç¤·¤ç¤¦¤«¡£¡£¡£ ºòÆü¤Î»þÅÀ¤Ç¤Ï¡¢Æ±¤¸¥Î¡¼¥É¤Ç¤·¤¿¡£ # chmod 6555 /bin/passwd # ls -ali | grep passwd 313716 -r-xr-xr-x 1 root 96392 Nov 16 11:57 nispasswd* 313666 -r-sr-sr-x 1 root 96392 Feb 24 1999 passwd* 313717 -r-xr-xr-x 1 root 96392 Nov 16 11:57 yppasswd* |
mm¤µ¤ó¡¢¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ UNIX·Ï¤Ç¤Ï¡¢Ìµ¤¤¤Î¤Ç¤¹¤«¤Í¤§¡Á¡£ »ÄÇ°¤Ç¤¹¡£ |
> ºòÆü¡¢¥ê¥ó¥¯¤ò³°¤·¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢¡¢¡¢¤½¤ì¤¬¸¶°ø¤Ç¤·¤ç¤¦¤«¡£¡£¡£ ¿ʬ¤³¤ì¤¬¸¶°ø¤¸¤ã¤Ê¤¤¤È¤Ï»×¤¦¤ó¤Ç¤¹¤¬¡¢¸µ¤ËÌ᤹¤Ë¤Ï # rm nispasswd yppasswd; ln passwd nispasswd; ln passwd yppasswd ¤Ç¤¹¡£¤Ç¡¢¤É¤¦¤¤¤¦¥¨¥é¡¼¤Ê¤Î¤«¤¤¤Þ¤¤¤ÁÄϤá¤Ê¤¤¤ó¤Ç¤¹¤¬¡¢ > ¡Öpasswd(SYSTEM): ¡û¡û¡û¡û does not exist ¥¢¥¯¥»¥¹¸¢¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Þ¤»¤ó¡£¡× ¡û¡û¡û¡û ¤Ë¤Ï²¿¤¬Æþ¤ë¤ó¤Ç¤¹¤«? ¥æ¡¼¥¶Ì¾? ¤â¤· NIS »È¤Ã¤Æ¤¿¤ê¡¢shadow ²½¤·¤Æ¤ë¤Ê¤é¡¢¸¶°ø¤òÆͤ»ß¤á¤Å¤é¤¤¤Ç¤¹¤Í¡£ ¤Þ¤ï¤ê¤Î¥µ¡¼¥Ð¤È /etc ¤Î¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤ò¸«Èæ¤Ù¤Æ¤ß¤Æ¤Ï¤É¤¦¤Ç¤·¤ç¤¦¡£ # ¤³¡¼¤æ¡¼¤È¤¤Ï truss ¤¬ÊØÍø¤Ê¤ó¤À¤±¤É¡¢suid ¥×¥í¥°¥é¥à¤Ë¤Ï # truss »È¤¨¤Ê¤¤¤Î¤Í¡Ä¡£ > spawn·Ï¤Î´Ø¿ô¤Ï¡¢MS-DOS¤ËÆÃͤΤâ¤Î¤Ç¤¹¡£ ¤Ê¤ë¤Û¤É¡£¥é¥¯¥ÀËܤΠTCP ¥µ¡¼¥Ð¤ÎÎã¤Ç sub spawn ¤È¤¤¤¦¤Î¤¬ ¤¢¤ë¤ó¤Ç¡¢C ¤Î¿·¤·¤¤´Ø¿ô¤Ç»÷¤¿¤â¤Î¤¬¤¢¤ë¤Î¤«¤È»×¤Ã¤Æ¤Þ¤·¤¿¡£ |
»Ï¤á¤Þ¤·¤Æ¡£ ¡Ö¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°¤Î´ðÁÃÃμ±¡× Èó¾ï¤ËÌÌÇò¤«¤Ã¤¿¤Ç¤¹¡£ ¤³¤ì¤«¤é¤â¤¬¤ó¤Ð¤Ã¤Æ¤¯¤À¤µ¤¤¡£¡ä68user¤µ¤ó ¤µ¤Ã¤½¤¯¼ÁÌä¤Ê¤ó¤Ç¤¹¤¬¡£ ¤¦¤Á¤Ë¤¢¤ëLinux(Vine 1.1)¤ÎApache1.3.3¤Ï CGI¤¬¡Ö¼«Ê¬ ¥°¥ë¡¼¥× ¾¿Í¡×¤Î¡Ö¾¿Í¡×¤Î¸¢¸Â¤Ç Æ°¤¯¤ó¤Ç¤¹¡£ ¤È¤³¤í¤¬CGI¤¬Â¾¿Í¤Î¸¢¸Â¤ÇÆ°¤¯¤Î¤Ï¤Þ¤º¤¤¤é¤·¤¤ ¤Î¤Ç¼«Ê¬¸¢¸Â¤ÇÆ°¤¯¤è¤¦¤Ë¤·¤¿¤¤¤Î¤Ç¤¹¤¬¤É¤¦¤Î¤è¤¦¤Ë ÀßÄê¥Õ¥¡¥¤¥ë¤ò½ñ¤¤«¤¨¤ì¤ÐÎɤ¤¤Î¤Ç¤·¤ç¤¦¤«¡£¡£ Ä´¤Ù¤Æ¤ß¤¿½ê¡¤UserÌ¿Îá (http://japache.infoscience.co.jp/japanese_1_3/manual/mod/core.html#user) ¤È¤«¤Ç¤ä¤ë¤ó¤Ç¤·¤ç¤¦¤«¡© |
> ¤³¤ì¤«¤é¤â¤¬¤ó¤Ð¤Ã¤Æ¤¯¤À¤µ¤¤¡£ ¤É¤â¤É¤â¡£¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ > CGI¤¬¡Ö¼«Ê¬ ¥°¥ë¡¼¥× ¾¿Í¡×¤Î¡Ö¾¿Í¡×¤Î¸¢¸Â¤ÇÆ°¤¯¤ó¤Ç¤¹¡£ Àµ³Î¤Ë¤Ï¡¢nobody ¸¢¸Â¤ÇÆ°¤¯¡¢¤Ç¤·¤ç¤¦¤Í¡£ > ¤È¤³¤í¤¬CGI¤¬Â¾¿Í¤Î¸¢¸Â¤ÇÆ°¤¯¤Î¤Ï¤Þ¤º¤¤¤é¤·¤¤¤Î¤Ç ¤³¤ì¤Ï´ÉÍý¼Ô¤ÎÊý¿Ë¤Ë¤è¤ê¤Þ¤¹¡£web ¤·¤«ÃÖ¤¤¤Æ¤¤¤Ê¤¤¥µ¡¼¥Ð¤Ç¤Ï ³Æ¥æ¡¼¥¶¸¢¸Â¤ÇÆ°¤«¤¹Êý¤¬°ÂÁ´¤Ç¤·¤ç¤¦¤±¤É¡¢³Ø¹»¤Î¤è¤¦¤Ë¥á¡¼¥ë¤ä ¤¤¤í¤ó¤Ê¥Ç¡¼¥¿¤¬ÃÖ¤¤¤Æ¤¢¤ë¥µ¡¼¥Ð¤Ç³Æ¥æ¡¼¥¶¸¢¸Â¤ÇÆ°¤«¤¹¤Î¤Ï ´í¸± (CGI¤Ë·ê¤¬¤¢¤ë¤È¥á¡¼¥ë¤Ê¤É¤âÁ´¤Æ¸«¤é¤ì¤Æ¤·¤Þ¤¦)¡¢ ¤È¤¤¤¦¹Í¤¨Êý¤â¤¢¤ê¤Þ¤¹¡£ > Ä´¤Ù¤Æ¤ß¤¿½ê¡¤UserÌ¿Îá ¤½¤ì¤Ï¡¢Î㤨¤Ð apache ¤ò nobody ¸¢¸Â¤Ç¤Ê¤¯ www (¤È¤¤¤¦¥æ¡¼¥¶) ¤Î¸¢¸Â¤ÇÆ°¤«¤·¤¿¤¤¾ì¹ç¤Ë»È¤¤¤Þ¤¹¡£ Î㤨¤Ð locate ¤Î¥Ç¡¼¥¿¤Ê¤É¤â¡¢nobody ¸¢¸Â¤ÇºîÀ®¤µ¤ì¤ë¤Î¤Ç¡¢ ËÜÍè apache ¤Ï nobody ¸¢¸Â¤Ç¤Ê¤¯ www ¤Ê¤É¤ÎÀìÍÑ¥¢¥«¥¦¥ó¥È¤ò ºî¤Ã¤Æ¡¢¤½¤Î¸¢¸Â¤ÇÆ°¤«¤·¤¿Êý¤¬°ÂÁ´¤Ç¤¹¡£ ¤Ç¡¢·ëÏÀ¤È¤·¤Æ¤Ï http://japache.infoscience.co.jp/japanese_1_3/manual/suexec.html ¤ò»È¤¤¤Þ¤¹¡£¤³¤ì¤ò»È¤¦¤È CGI/SSI ¤È¤â¤Ë³Æ¥æ¡¼¥¶¸¢¸Â¤ÇÆ°¤¤Þ¤¹¡£ Ĺ¡¹¤È¸ì¤Ã¤Æ¤ª¤¤¤Æ¥¢¥ì¤Ç¤¹¤¬¡¢ËÍ¤Ï suExec ¤òÀßÄꤷ¤¿¤³¤È¤Ï¤Ê¤¤¤Ç¤¹¡£ ¾å¤Î¥ê¥ó¥¯¤Ë¤Ï¥³¥ó¥Ñ¥¤¥ë¤¬¤É¤¦¤³¤¦¤Ã¤Æ½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¤¬¡¢É¬ÍפʤΤ«¤Ê¤¡¡£ ¥½¡¼¥¹»ý¤Ã¤Æ¤¤Æ % ./configure --enable-suexec ¤È¤¹¤ë¤Î¤Ç¤Ï¥À¥á¤Ê¤ó¤Ç¤·¤ç¤¦¤«¡£¤¤¤í¤¤¤í»î¤·¤Æ¤ß¤Æ²¼¤µ¤¤¡£ ¤³¤ì¤È¤ÏÊ̤ˡ¢cgiwrap ¤È¤¤¤¦¤Î¤ò»È¤¦ÊýË¡¤â¤¢¤ê¤Þ¤¹¡£ ftp://ftp.win.or.jp/pub/network/www/cgiwrap ¤³¤ì¤À¤È CGI ¤À¤±³Æ¥æ¡¼¥¶¸¢¸Â¤ÇÆ°¤¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë¤·¤Æ /usr/local/apache/cgi-bin/cgiwrap ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¡¢ http://localhost/cgi-bin/cgiwrap/~username/cginame.cgi ¤È¤¹¤ë¤È¡¢/~username/cginame.cgi ¤¬ username ¤Î¸¢¸Â¤ÇÆ°¤¤Þ¤¹¡£ httpd.conf ¤Ë AliasMatch "^/([^/]+)/cgi-bin/(.*)$" "/cgi-bin/cgiwrap/$1/$2" ¤Ê¤É¤È½ñ¤¤¤Æ¤ª¤¯¤È¡¢/~username/cgi-bin/hoge.cgi ¤Ë¥¢¥¯¥»¥¹¤·¤¿¤À¤±¤Ç ³Æ¥æ¡¼¥¶¸¢¸Â¤ÇÆ°¤«¤¹¤³¤È¤â¤Ç¤¤Þ¤¹¤Í¡£ ¤ó¡ÁŤ¯¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£ |
>¤Ê¤ë¤Û¤É¡£¥é¥¯¥ÀËܤΠTCP ¥µ¡¼¥Ð¤ÎÎã¤Ç sub spawn ¤È¤¤¤¦¤Î¤¬ spawn ¤Ã¤Æ¤É¤¦¤¤¤¦°ÕÌ£¤Ê¤ó¤À¤í¤¦¤È°ÊÁ°¤«¤éµ¿Ìä¤À¤Ã¤¿¤Î¤ÇÄ´¤Ù¤¿¤é¡¢ µû¤Ê¤É¤Î»ºÍñ¤È¤¤¤¦°ÕÌ£¤Ê¤Î¤Ç¤¹¤Í¡£ MS-DOS¤Î spawn ¤Ï¡¢exec(3)¤ò¿¿»÷¤¿¤â¤Î¤À¤È»×¤¤¤Þ¤¹¡£ MS-DOS¤Î¼ç¤Ê¥³¥ó¥Ñ¥¤¥é¤Ç»È¤¨¤ë¤è¤¦¤Ç¤¹¡£ exec·Ï¤Î¥é¥¤¥Ö¥é¥ê¤â¤¢¤ê¤Þ¤¹¤¬¡¢Î㤨¤ÐBorland C++¤Î¾ì¹ç int spawnve(int mode, char *path, char *argv[], char *envp[]); ¤Ç¡¢mode ¤Ë P_WAIT ¤ò»ØÄꤹ¤ë¤È¡¢¿Æ¥×¥í¥»¥¹¤Ï¤½¤Î¤Þ¤Þ¤Ë¤·¤Æ¡¢ ¶õ¤¥á¥â¥ê¤Ç»Ò¥×¥í¥»¥¹¤ò¼Â¹Ô¤·¡¢½ªÎ»¸å¤Ë¿Æ¥×¥í¥»¥¹¤ËÀ©¸æ¤òÌᤷ¤Þ¤¹¡£ mode ¤ò P_OVERLAY ¤Ë¤¹¤ë¤È¡¢execve() ¤ÈƱ¤¸¤Ë¤Ê¤ê¤Þ¤¹¡£ |
¤¤¤Ä¤â¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£¤ß¤Î¤ë¤Ç¤¹¡£ > ¡Öpasswd(SYSTEM): ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È does not exist ¥¢¥¯¥»¥¹¸¢¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Þ¤»¤ó¡£¡×¤Î·ï¡£ ¥ê¥ó¥¯Åù¡¢¸µ¤ËÌ᤹Á°¤Ë¡¢"passwd"¥³¥Þ¥ó¥ÉÉü³è¤·¤Þ¤·¤¿¡£¸½ºß¡¢°Ê²¼¤Î¾õÂ֤Ǥ¹¡£ 313666 -r-sr-sr-x 3 root 96392 Feb 24 1999 nispasswd* 313666 -r-sr-sr-x 3 root 96392 Feb 24 1999 passwd* 313666 -r-sr-sr-x 3 root 96392 Feb 24 1999 yppasswd* ¤¿¤À¡¢¸¶°ø¤Ï¤Þ¤À²ò¤ê¤Þ¤»¤ó¡£truss¤¬»È¤¨¤¿¤Î¤Ç¡¢¸«¤Æ¤ß¤Æ¤Ï¤¤¤ë¤Î¤Ç¤¹¤¬¡¢ÉÔÌÀ¤Ç¤¹¡£ ¤³¤³¤Ç¼ÁÌä¤Ê¤Î¤Ç¤¹¤¬¡¢"root"°Ê³°¤Î¥æ¡¼¥¶¤Ç¤â¡¢¥³¥Þ¥ó¥É½ñ´¹¡Ê¤â¤·¤¯¤Ï¥¢¥¯¥»¥¹¸¢ÉÕÍ¿¡Ë¤Ï ²Äǽ¤Ç¤·¤ç¤¦¤«¡©»ä¤É¤â¤Î¥µ¡¼¥Ð¥»¥¥å¥ê¥Æ¥£¾å¤ËÌäÂ꤬¤¢¤ë¤è¤¦¤Êµ¤¤¬¤·¤Æ¤Ê¤ê¤Þ¤»¤ó¡£ |
> truss¤¬»È¤¨¤¿¤Î¤Ç ¤Ê¤ë¤Û¤É¡£root ¤Ê¤é»È¤¨¤ë¤ó¤Ç¤¹¤Í¡£ > "root"°Ê³°¤Î¥æ¡¼¥¶¤Ç¤â¡¢¥³¥Þ¥ó¥É½ñ´¹¡Ê¤â¤·¤¯¤Ï > ¥¢¥¯¥»¥¹¸¢ÉÕÍ¿¡Ë¤Ï²Äǽ¤Ç¤·¤ç¤¦¤«¡© root °Ê³°¤Î°ìÈ̥桼¥¶¤¬ /usr/bin/passwd ¤ò½ñ¤´¹¤¨¤¿¤ê¡¢ ¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤òÊѹ¹¤µ¤»¤ë¤³¤È¤¬¤Ç¤¤ë¤«¡¢¤È¤¤¤¦¤³¤È¤Ç¤¹¤«? ¤â¤Á¤í¤óÉáÄ̤ÏÉÔ²Äǽ¤Ç¤¹¤¬¡¢¥»¥¥å¥ê¥Æ¥£¥Û¡¼¥ë¤¬¤¢¤ë¾ì¹ç¤Ï ¤½¤Î¸Â¤ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¡Öpasswd ¤¬¸ú¤«¤Ê¤¯¤Ê¤Ã¤¿¡á¥¯¥é¥Ã¥¯¡×¤È¤¤¤¦¤ï¤±¤Ç¤â ¤Ê¤¤¤Î¤Ç¡¢¤·¤Ð¤é¤¯ÍͻҤò¸«¤Æ¤Ï¤É¤¦¤Ç¤·¤ç¤¦¡£ |
>68user 1999/11/17(¿å) 18:50 >> CGI¤¬¡Ö¼«Ê¬ ¥°¥ë¡¼¥× ¾¿Í¡×¤Î¡Ö¾¿Í¡×¤Î¸¢¸Â¤ÇÆ°¤¯¤ó¤Ç¤¹¡£ >Àµ³Î¤Ë¤Ï¡¢nobody ¸¢¸Â¤ÇÆ°¤¯¡¢¤Ç¤·¤ç¤¦¤Í¡£ nobody¸¢¸Â¤È¤¤¤¦¤ó¤Ç¤¹¤«¡£¡£ ÃΤé¤Ê¤«¤Ã¤¿(^^; >> ¤È¤³¤í¤¬CGI¤¬Â¾¿Í¤Î¸¢¸Â¤ÇÆ°¤¯¤Î¤Ï¤Þ¤º¤¤¤é¤·¤¤¤Î¤Ç >¤³¤ì¤Ï´ÉÍý¼Ô¤ÎÊý¿Ë¤Ë¤è¤ê¤Þ¤¹¡£ ¤à¤à¡¼ ¤Ê¤ë¤Û¤É¡£ ¥±¡¼¥¹¥Ð¥¤¥±¡¼¥¹¤È¤«¤¤¤¦¤ä¤Ä¤Ç¤¹¤«¡£ >¤Ç¡¢·ëÏÀ¤È¤·¤Æ¤Ï >¡¡http://japache.infoscience.co.jp/japanese_1_3/manual/suexec.html >¤ò»È¤¤¤Þ¤¹¡£¤³¤ì¤ò»È¤¦¤È CGI/SSI ¤È¤â¤Ë³Æ¥æ¡¼¥¶¸¢¸Â¤ÇÆ°¤¤Þ¤¹¡£ > >Ĺ¡¹¤È¸ì¤Ã¤Æ¤ª¤¤¤Æ¥¢¥ì¤Ç¤¹¤¬¡¢ËÍ¤Ï suExec ¤òÀßÄꤷ¤¿¤³¤È¤Ï¤Ê¤¤¤Ç¤¹¡£ >¾å¤Î¥ê¥ó¥¯¤Ë¤Ï¥³¥ó¥Ñ¥¤¥ë¤¬¤É¤¦¤³¤¦¤Ã¤Æ½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¤¬¡¢É¬ÍפʤΤ«¤Ê¤¡¡£ >¥½¡¼¥¹»ý¤Ã¤Æ¤¤Æ >¡¡% ./configure --enable-suexec >¤È¤¹¤ë¤Î¤Ç¤Ï¥À¥á¤Ê¤ó¤Ç¤·¤ç¤¦¤«¡£¤¤¤í¤¤¤í»î¤·¤Æ¤ß¤Æ²¼¤µ¤¤¡£ suEXEC¡£¤³¤ì¤Ç¤¹¤« Apache¤Î¥Ð¡¼¥¸¥ç¥ó¥¢¥Ã¥×¤È¤È¤â¤Ë»î¤·¤Æ¤ß¤Þ¤¹¡£ ¾å¼ê¤¯¤¤¤Ã¤¿¤éÊó¹ð¤Ë»²¤ê¤¿¤¤¤È»×¤¤¤Þ¤¹¡£ >¤³¤ì¤È¤ÏÊ̤ˡ¢cgiwrap ¤È¤¤¤¦¤Î¤ò»È¤¦ÊýË¡¤â¤¢¤ê¤Þ¤¹¡£ >¡¡ftp://ftp.win.or.jp/pub/network/www/cgiwrap > >¤³¤ì¤À¤È CGI ¤À¤±³Æ¥æ¡¼¥¶¸¢¸Â¤ÇÆ°¤¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë¤·¤Æ >/usr/local/apache/cgi-bin/cgiwrap ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¡¢ >¡¡http://localhost/cgi-bin/cgiwrap/~username/cginame.cgi >¤È¤¹¤ë¤È¡¢/~username/cginame.cgi ¤¬ username ¤Î¸¢¸Â¤ÇÆ°¤¤Þ¤¹¡£ >httpd.conf ¤Ë >¡¡AliasMatch "^/([^/]+)/cgi-bin/(.*)$" "/cgi-bin/cgiwrap/$1/$2" >¤Ê¤É¤È½ñ¤¤¤Æ¤ª¤¯¤È¡¢/~username/cgi-bin/hoge.cgi ¤Ë¥¢¥¯¥»¥¹¤·¤¿¤À¤±¤Ç >³Æ¥æ¡¼¥¶¸¢¸Â¤ÇÆ°¤«¤¹¤³¤È¤â¤Ç¤¤Þ¤¹¤Í¡£ suEXEC¤Î¥¤¥ó¥¹¥È¡¼¥ë¤Ë¼ºÇÔ¤·¤¿¤é¤³¤Á¤é¤â»î¤·¤Æ¤ß¤Þ¤¹¡£ |
> http://japache.infoscience.co.jp/japanese_1_3/manual/suexec.html ¤ä¤Ã¤Ñ¤ê¤³¤ì¤Ã¤Æ¸Å¤¤¤Î¤Í¡£±Ñ¸ìÈǤÎÊý¤ò¸«¤Æ²¼¤µ¤¤¡£ http://japache.infoscience.co.jp/apache/docs/suexec.html ¤¦¤Á¤Ç¤â apache1.3.9 ¤òÆþ¤ì¤Æ¤ß¤Þ¤·¤¿¤¬¡¢configure,make,make install ¤Ç ´Êñ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤Ç¤ (configure¤Î¥ª¥×¥·¥ç¥ó¤òÉÕ¤±¤¿¤ê¡¢httpd.conf ¤Î ¼êľ¤·¤Ï¤·¤Þ¤·¤¿¤¬)¡¢suExec ¤â¤¦¤Þ¤¯Æ°¤¤Þ¤·¤¿¡£ > nobody¸¢¸Â¤È¤¤¤¦¤ó¤Ç¤¹¤«¡£¡£ ¤ï¤«¤Ã¤Æ¤ª¤é¤ì¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤¬Ç°¤Î¤¿¤á½ñ¤¤¤Æ¤ª¤¤Þ¤¹¤È¡¢Â¾¿Í¤Î¸¢¸Â¤Ç Æ°¤¯¤³¤È¤ò¡Önobody ¸¢¸Â¡×¤È¸Æ¤Ö¤Î¤Ç¤Ï¤Ê¤¤¤Ç¤¹¡£¼ÂºÝ¤Ë nobody ¤È¤¤¤¦ ¥¢¥«¥¦¥ó¥È¤Ï¼Âºß¤·¤Æ¤ª¤ê (see /etc/passwd)¡¢¤½¤Î¸¢¸Â¤Ç httpd ¤ÏÆ°¤¤¤Æ¤¤¤ë¡¢ ¤È¤¤¤¦¤³¤È¤Ç¤¹¡£ ¤Ê¤ó¤Ç nobody ¤ÇÆ°¤¯¤«¤È¤¤¤¦¤È¡¢httpd.conf ¤Ë User nobody ¤È½ñ¤¤¤Æ¤¢¤ë¤«¤é¤Ç¤¹¡£ |
¤Á¤ç¤Ã¤È»þ´Ö¤¬¼è¤ì¤Ê¤¯¤Æ ÊÖ»öÃÙ¤ì¤Þ¤·¤¿¡£(_ _) apache1.3.9¤ÏÉáÄ̤Ë? configure,make,make install ¤Ç¥¤¥ó¥¹¥È¡¼¥ë¤Ç¤¤Þ¤·¤¿¡£ suEXEC¤â̵»ö¥¤¥ó¥¹¥È¡¼¥ë¤Ç¤¤Þ¤·¤¿¡£ CGI¤Ê¤É¤¬³Æ¥æ¡¼¥¶¡¼¸¢¸Â¤ÇÆ°¤¤¤Æ¤Þ¤·¤¿¡£ ¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ >¤ï¤«¤Ã¤Æ¤ª¤é¤ì¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤¬Ç°¤Î¤¿¤á½ñ¤¤¤Æ¤ª¤¤Þ¤¹¤È¡¢Â¾¿Í¤Î¸¢¸Â¤Ç >Æ°¤¯¤³¤È¤ò¡Önobody ¸¢¸Â¡×¤È¸Æ¤Ö¤Î¤Ç¤Ï¤Ê¤¤¤Ç¤¹¡£¼ÂºÝ¤Ë nobody ¤È¤¤¤¦ >¥¢¥«¥¦¥ó¥È¤Ï¼Âºß¤·¤Æ¤ª¤ê (see /etc/passwd)¡¢¤½¤Î¸¢¸Â¤Ç httpd ¤ÏÆ°¤¤¤Æ¤¤¤ë¡¢ >¤È¤¤¤¦¤³¤È¤Ç¤¹¡£ ¤¨¤§¡£¤½¤ÎÊÕ¤ÏÂç¾æÉפǤ¹¡£ |
¥¸¥§¥À¥¤¥Ê¥¤¥È¡¢£¹Ì̤Υ·¡¼¥¯¥ì¥Ã¥È¥¨¥ê¥¢Ã¯¤«¶µ¤¨¤Æ²¼¤µ¤¤¡£ |
¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°¤Î´ðÁÃÃμ±¡¢À¨¤¤¤Ç¤¹¡£ÁÇÀ²¤é¤·¤¤¤Ç¤¹¡£ »ä¤Î¤è¤¦¤Ê̵ÃΤˤǤâ¤Ç¤¤Æ¤·¤Þ¤Ã¤Æ¤Á¤ç¤Ã¤ÈÉݤ¤¤Ç¤¹¡£ ¡Ê¤Û¤È¤ó¤ÉÀڤꎤê¾õÂ֤ʤó¤Ç¤¹¤¬¡¦¡¦¡Ë FTP¤Î¹à¤Ë¤Ä¤¤¤Æ¤Ê¤ó¤Ç¤¹¤¬ ¡Ö# FTP¥µ¡¼¥Ð¤Ë¡¢»Ò¥×¥í¥»¥¹¤¬ÂԤäƤ¤¤ëIP¥¢¥É¥ì¥¹¤È¥Ý¡¼¥È¤Î¾ðÊó¤òÅϤ¹¡× ¤È¤¤¤¦¤Î¤¬¤¢¤ê¤Þ¤¹¤è¤Í¡£ftptras.pl¤Ç½é¤á¤Æ»Ò¥×¥í¥»¥¹¤Ï½Ð¤Æ¤¯¤ë¤Î¤Ç¤Ï¡£ ¤½¤ì°ÊÁ°¤ÎÎ㼨¤Ë¤Ï¡Ö»Ò¥×¥í¥»¥¹¡×¤È¤¤¤¦¥³¥á¥ó¥È¤ÏɬÍ×̵¤¤¤Î¤Ç¤Ï¡£ ¡Ê¤Á¤ç¤Ã¤È¤³¤³¤ÇǺ¤ó¤Ç¤·¤Þ¤Ã¤¿¤Î¤Ç¡¦¡¦¡¦¡£¡Ë |
> ¤½¤ì°ÊÁ°¤ÎÎ㼨¤Ë¤Ï¡Ö»Ò¥×¥í¥»¥¹¡×¤È¤¤¤¦¥³¥á¥ó¥È¤ÏɬÍ×̵¤¤¤Î¤Ç¤Ï¡£ ¤É¤â¤É¤â¡£¥ß¥¹¤Ç¤¹¤Í¡£Ä¾¤·¤Æ¤ª¤¤Þ¤¹¡£ ºÇ½é¤Ï fork ¤·¤Ê¤¤¤È ftp ¥¯¥é¥¤¥¢¥ó¥È¤Ïºî¤ì¤Ê¤¤¤È»×¤Ã¤Æ¤Þ¤·¤¿¡£ ·ë¶É¤½¤ì¤Ï¸í²ò¤À¤Ã¤¿¤Î¤Ç½ñ¤Ä¾¤·¤¿¤Î¤Ç¤¹¤¬¡¢¥³¥á¥ó¥È¤Î½¤Àµ¤ò ˺¤ì¤Æ¤¿¤è¤¦¤Ç¤¹¡£ # ftptrans ¤Ç fork ¤·¤Æ¤ë¤Î¤â²ø¤·¤¤¡£¤Û¤ó¤È¤Ë1¥×¥í¥»¥¹¤Ç # ¤Ç¤¤Ê¤¤¤Î¤«¤Ê¤¡? |
¤¦¡Á¡Á¤ó¡£ ¥í¡¼¥«¥ë¤Î¥Û¥¹¥È̾¤òÆÀ¤ë¤Ë¤Ï¤É¤¦¤¹¤ì¤ÐÎɤ¤¤Ç¤¹¤«¡© ³«¤¤¤¿SOCKET¤«¤é¼ê¤ËÆþ¤ì¤ë°Ê³°¤ËŬÅö¤ÊÊýË¡¤Æ̵¤¤¤Ç¤¹¤«¤·¤é¤ó¡£ ¥·¥§¥ë¥³¥Þ¥ó¥É¤Ï»È¤ï¤º¤Ëperl¤Î´Ø¿ô¤À¤±¤Ç¡£ RFC¤ÎÆüËܸìÌõ¤Ã¤Æ¤Û¤ó¤ÈÊØÍø¤Ç¤¹¤è¤Í¡£´¶¼Õ¤·¤Ê¤¬¤éÆɤó¤Ç¤Þ¤¹¡£ PASV¤ÎÊÖ»ö¤Æ227¤À¤±¤ß¤¿¤¤¤Ç¤¹¤Í¡£¤¢¤È¤ÏÁ´Éô¥¨¥é¡¼¤ß¤¿¤¤¡£ ¤½¤ì¤È(x,x,x,x,x,x)¤Î¡Ö³ç¸Ì¡×¤¬ÉÕ¤«¤Ê¤¤¾ì¹ç¤â¤¢¤ë¤è¤¦¤Ç¤¹¤Í¡£ Àµµ¬É½¸½¤â¤à¤Ä¤«¤·¤¤¤±¤É´èÄ¥¤Ã¤Æ¤ë¤È¤³¤ª¤í¤Ç¤¹¡£ |
> ¥í¡¼¥«¥ë¤Î¥Û¥¹¥È̾¤òÆÀ¤ë¤Ë¤Ï¤É¤¦¤¹¤ì¤ÐÎɤ¤¤Ç¤¹¤«¡© »î¤·¤Æ¤Þ¤»¤ó¤¬¡¢¤È¤ê¤¢¤¨¤º http://www.kt.rim.or.jp/~ksk/sock-faq/unix-socket-faq-ja-2.html#ss2.24 http://www.kt.rim.or.jp/%7ekbk/perl5.005/perlfaq9.html#How_do_I_find_out_my_hostname_do ¤³¤³¤é¤¢¤¿¤ê¤Ç¤¦¤Þ¤¯¤¤¤«¤Ê¤¤¤Ç¤¹¤«? > ¤¢¤È¤ÏÁ´Éô¥¨¥é¡¼¤ß¤¿¤¤¡£ > ¤½¤ì¤È(x,x,x,x,x,x)¤Î¡Ö³ç¸Ì¡×¤¬ÉÕ¤«¤Ê¤¤¾ì¹ç¤â¤¢¤ë¤è¤¦¤Ç¤¹¤Í¡£ ¤Ê¤ë¤Û¤É¡£¤È¤³¤í¤Ç¡¢¤³¡¼¤æ¡¼¤Î¤¬¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥à¤Î¥ä¤Ê ¤È¤³¤í¤Ç¤¹¤è¤Í¡£Áê¼ê¤¬¤¢¤Ã¤Æ¤Î¤â¤Î¤À¤«¤é¡Ö¤³¤ì¤ÇÀµ¤·¤¤¤«¤É¤¦¤«¡× ¡Ö´°àú¤«¤É¤¦¤«¡×¤¬¤ï¤«¤é¤Ê¤¤¤È¤¤¤¦¡£ ¤¢¤È¡¢¿¿ÌÌÌܤ˺î¤Ã¤ÆÇÛÉۤǤ⤹¤ë¤Ä¤â¤ê¤Ê¤é http://hp.vector.co.jp/authors/VA002682/rfc1123j.htm ¤âÆɤó¤Ç²¼¤µ¤¤ (¤â¤¦Æɤó¤Ç¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤¬)¡£ # ¤¢¤È¡¢data-connection ¤Î peer-port ¤¬ 20(ftp-data) ¤«¤É¤¦¤«¤Î # ¥Á¥§¥Ã¥¯¤â¤Í¡£ |
68USER¤µ¤ó¤ÎÃæ¤ÇºÇ¤âÆÀ°Õ¤Ê¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Ï¤Ê¤ó¤Ç¤¹¤«? |
elisp ¤Ç¤¹¡£ ¡Ä¥¦¥½¤Ç¤¹¡£perl ¤« C ¤Ç¤¹¤±¤É¡¢¿Í¤Ë¸Ø¤ì¤ë¤Û¤É¤Î ¥ì¥Ù¥ë¤¸¤ã¤Ê¤¤¤Ç¤¹¡£Àº¿Ê¤»¤Í¤Ð¡£ |
¿§¡¹¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤·¤¿¡£ > 227¤À¤±¤ß¤¿¤¤ ¤¿¤·¤«¤Ë°ìÈÖ¾å¤Î·å¤À¤±¸«¤í¤Ã¤ÆRFC¤Ë½ñ¤¤¤Æ¤¢¤ê¤Þ¤·¤¿¡£ perl¤Æ²¶¤Î¤è¤¦¤Ê̵ÃΤʽ鿴¼Ô¤Ë¤âÍ¥¤·¤¤¸À¸ì¤Ç¤¹¤Í¡ª ¹½Ê¸µ¬Â§¤¬´Ë¤¤¤Ã¤Æ¤¤¤¦¤ó¤Ç¤¹¤«¡¢³ç¸Ì¤È¤«Å¬Åö¤Ç¤¤¤¤¤·¡£ ¤È¤ê¤¢¤¨¤º¹½Ê¸¤È´Ø¿ô¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¤µ¤¨¤¢¤ì¤Ð¤Ê¤ó¤È¤Ê¤¯ ½ÐÍè¤Æ¤·¤Þ¤¦¡£¤¢¤ê¤¬¤¿¤¤¤³¤È¤Ç¤¹¡£ ¤Þ¤¢¡Ä¤½¤Î¤ª¤«¤²¤«perl»È¤¤¤Ê¿Í¤â²¶¤Î¤è¤¦¤ÊÂÌÌܥѡ¼¥é¤«¤é Ķ¥¹¥´¥¤¿Í¤Þ¤ÇÉå¤ë¤Û¤ÉÂô»³µï¤ë¤é¤·¤¯¤Æperl¤Ê¤ó¤«º£¹¹ ¡Ö¿¾¯¡×»È¤¨¤Æ¤â²¿¤Î¼«Ëý¤Ë¤â¤Ê¤é¤Ê¤¤¤ß¤¿¤¤¤Ê¤ó¤Ç¤¹¤¬¡Ä¡£ ¤Ç¤â¤Ç¤â¤³¤ì¤«¤é¤âperl¤ÇÍ·¤Ö¤¼¤¨¡Á¡£ ¤¸¤ã¤¢¤µ¤è¤Ê¤é¤¢¡Á¡£ |
°ÊÁ°¤ËPOST¤Ë´Ø¤·¤Æ¼ÁÌ䤷¤¿¼Ô¤Ç¤¹¡£ÃÙ¤¤¥ì¥¹¤Ç¤¹¤¬¡Ä¡Ê¡°¡°¡¨ ¤É¤¦¤ä¤é¡¢¥½¥±¥Ã¥È¤ËÁ÷¤ëPOST¡Á$message¤Ï¡¢ ¸ÄÊ̤ËÁ÷¤Ã¤¿¾ì¹ç¡¢ÅÓÃæ¤Î\r\n¤ËHTTPD¤¬È¿±þ¤·¤Æ¤·¤Þ¤¦¤è¤¦¤Ç¤¹¡£ ¤Ê¤Î¤Ç¡¢$send¤È¤«¡¢Å¬Åö¤ÊÊÑ¿ô¤ËÁ´Éô·Ò¤²¤ÆÂåÆþ¤·¡¢ print SOCKET $send; ¤È¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤è¤¦¤Ç¤¹¡£ HTTP/1.0¤ò»ØÄꤷ¡¢¹¹¤Ë¤³¤ÎÊýË¡¤Ç¤ä¤Ã¤Æ¤ß¤¿½ê¡¢POST¤¬À®¸ù¤·¤Þ¤·¤¿¡£ ¤Á¤Ê¤ß¤Ë¡¢HTTP¥Ð¡¼¥¸¥ç¥ó¤ò¾Êά¤·¤¿¾ì¹ç¤Ï HTTP/1.1¤È¤ß¤Ê¤µ¤ì¤ë¤ß¤¿¤¤¤Ç¤¹¡£¡ÊÁ´Éô¤½¤¦¤È¤Ï¸Â¤é¤Ê¤¤¡Ä¤«¤Ê¡©¡Ë |
> HTTP¥Ð¡¼¥¸¥ç¥ó¤ò¾Êά¤·¤¿¾ì¹ç¤Ï HTTP/1.1¤È¤ß¤Ê¤µ¤ì¤ë¤ß¤¿¤¤¤Ç¤¹¡£ ¾Êά¤¹¤ë¤È HTTP/0.9 ¤Ë¤Ê¤ê¤Þ¤¹¡£0.9 ¤Ç¤Ï GET °Ê³°»È¤¨¤Þ¤»¤ó¤·¡¢ ¥Ø¥Ã¥À¤âÁ÷¤ì¤Þ¤»¤ó¡£Î㤨¤Ð GET /~foo/index.html ¤òÁ÷¤Ã¤¿»þÅÀ¤Ç¡¢¥µ¡¼¥Ð¤«¤é¥ì¥¹¥Ý¥ó¥¹¤¬Ê֤äƤ¤Þ¤¹¡£¤Ê¤Î¤Ç¡¢ > ÅÓÃæ¤Î\r\n¤ËHTTPD¤¬È¿±þ¤·¤Æ¤·¤Þ¤¦¤è¤¦¤Ç¤¹¡£ ¤³¤ì¤Ï¤½¤¦¤¤¤¦¤³¤È¤¸¤ã¤Ê¤¤¤Ç¤·¤ç¤¦¤«? ¤Ê¤ª¡¢HTTP 0.9 ¤Ç POST /~foo/index.html ¤Ê¤É¤È¤·¤è¤¦¤È¤¹¤ë¤È¡¢405 Method Not Allowed ¤Ë¤Ê¤ë¤Ï¤º¤Ç¤¹¡£ |
¤È¤¤¤¦¤ï¤±¤Ç¡¢ > $send¤È¤«¡¢Å¬Åö¤ÊÊÑ¿ô¤ËÁ´Éô·Ò¤²¤ÆÂåÆþ¤·¡¢ > print SOCKET $send; ¤È¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤ ¤È¤¤¤¦¤³¤È¤Ï¤¢¤êÆÀ¤Ê¤¤¤È»×¤¤¤Þ¤¹¤¬¡¢°ì±þ»î¤·¤Æ¤ß¤¿¤¤¤Î¤Ç ¤è¤í¤·¤±¤ì¤Ð¤½¤Î·Ç¼¨ÈĤΠURL ¤ò¶µ¤¨¤Æ²¼¤µ¤¤¡£ |
¤ª¤Ï¤è¤¦¤´¤¶¤¤¤Þ¤¹¡£ ¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°¤Î´ðÁÃÃμ±¤Î C¸À¸ì¤ÇHTTP¥¯¥é¥¤¥¢¥ó¥È¤òºî¤Ã¤Æ¤ß¤è¤¦(2) ¤Ç¤Ïperl¤È°ã¤¤¥Ø¥Ã¥ÀÉôʬ¤¬É½¼¨¤µ¤ì¤Æ¤Þ¤¹¤è¤Í¡© ¤¢¤ì¤òËÜÂÎÉô¤À¤±É½¼¨¤¹¤ë¤è¤¦¤Ë¤¹¤ë¤Ë¤Ï¤É¤¦¤·¤¿¤é¤¤¤¤¤ó¤Ç¤·¤ç¤¦¡© ¿§¡¹¤ä¤Ã¤Æ¤ß¤Þ¤·¤¿¤¬¤É¤¦¤â¾å¼ê¤¯¤¤¤«¤Ê¤¯¤Æ¡Ä ¡ÖUNIX¤Î¾ì¹ç¡×¤Ïfgets´Ø¿ô¤ò¥½¥±¥Ã¥ÈÆɤ߽Ф·¤Ë¤â»È¤¨¤Þ¤¹¤±¤É Ë¿Windows¤Ï¾¡¼ê¤¬°ã¤¦¤ó¤Ç¤¹¡£¡£ ¡ô¡¡¤É¡¼¤ß¤Æ¤âUNIX¤ÎÊý¤¬¤ä¤ê¤ä¤¹¤¤ ¤É¤ó¤Ê´¶¤¸¤«¤È¤¤¤¦¤Î¤¬http://www.nakka.com/inet/httpc.html¤Î ÀַϤο§¤Ç ¡Ö/* ¥µ¡¼¥Ð¤«¤é¥Ç¡¼¥¿¤ò¼õ¿®¤¹¤ë½èÍý */¡× ¤È¤«½ñ¤«¤ì¤Æ¤ëÊÕ¤ê¤Ç¤¹¡£ ¤Ê¤ó¤È¤Ê¤¯¸«¤ë¤È¤ä¤ê¤Ë¤¯¤¤¤Î¤¬¤ï¤«¤ë¤«¤È^^;; ¤É¤¦¤¹¤ì¤Ð¤¤¤¤¤Ç¤·¤ç¤¦¤«¡© »×¤¤¤Ä¤¤¤¿¤Î¤Ç¤¤¤¤¤Ç¤¹¤«¤é¥ì¥¹¤¯¤À¤µ¤¤¡£ ¤É¤¦¤â¥¢¥¤¥Ç¥¢¤¬¡¦¡¦¡¦¡¦ |
while (1){ char buf[BUF_LEN]; int read_size; static int body_flg = 0; char *p; read_size = read(s,buf,BUF_LEN); if ( read_size > 0 ){ if ( body_flg ){ p = buf; } else if ( p = strstr(buf,"\r\n\r\n") ){ /* ¶õ¹Ô¤Ï¤¢¤ë¤«? */ p+=4; /* \r\n\r\n ¤ÎʬÀè¤Ë¿Ê¤á¤ë */ read_size -= p-buf; /* ¥µ¥¤¥ºÄ´À° */ body_flg = 1; } if ( body_flg ){ write(1,p,read_size); } } else { break; } } ¤³¤ó¤Ê´¶¤¸¤Ç¤É¤¦¤Ç¤·¤ç¤¦¤«? |
¤¢¡¢Á´Á³¥À¥á¤¸¤ã¤ó¡£ > } else if ( p = strstr(buf,"\r\n\r\n") ){ buf ¤Ï \0 ¤Ç terminate ¤µ¤ì¤Æ¤Ê¤¤¤·¡¢¤½¤â¤½¤â \r\n\r\n ¤¬1²ó¤ÇÆɤá¤ëÊݾڤϤʤ¯¤Æ¡¢¤Á¤ç¤¦¤É ¶³¦¤Ë¤Þ¤¿¤¬¤Ã¤Æ¤ë¤«¤â¤·¤ì¤Ê¤¤¡£ ¤Þ¡¢¤½¤³¤é¤Ø¤ó¤Ï¤è¤·¤Ê¤Ë¡£ |
ping¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥Û¥¹¥È̾¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢ ¤½¤Î¥Û¥¹¥È̾¡Ê¤Þ¤¿¤Ï£É£Ð¥¢¥É¥ì¥¹¡Ë¤È¤ÎÀܳ³Îǧ¤¬ ¤Ç¤¤Þ¤¹¡£ ¤³¤ì¤ÈƱÍͤˡ¢¤½¤Î¥Û¥¹¥È̾¡Ê¤Þ¤¿¤Ï£É£Ð¥¢¥É¥ì¥¹¡Ë¤Î ÆÃÄê¤Î¥Ý¡¼¥ÈÈÖ¹æ¤ËÂФ·¤Æ¡¢Àܳ³Îǧ¤ò¹Ô¤¤¤¿¤¤¤Î ¤Ç¤¹¤¬¡¢¤Ê¤Ë¤«Îɤ¤ÊýË¡¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡© |
¼ÂºÝ¤Ë connect ¤¹¤ë¤Î¤Ï¥À¥á¤Ê¤ó¤Ç¤¹¤«? ¤½¤ì°Ê³°¤ÎÊýË¡¤Ï¤Ê¤¤¤È»×¤¤¤Þ¤¹¡£Â¿Ê¬¡£ |
ËÜ¥µ¥¤¥È¤Ï¤¿¤Þ¤Ë¤Ç¤Ï¤¢¤ê¤Þ¤¹¤¬»²¹Í¤Ë¤µ¤»¤Æ¤¤¤¿¤À¤¤¤Æ¤ª¤ê¤Þ¤¹¡£ »ä¤â²¿¤«Åê¹Æ¤µ¤»¤Æ¤¤¤¿¤À¤¤¿¤¤¤È¹Í¤¨¤Æ¤ª¤ê¤Þ¤·¤¿¤¬¡¢¥×¥í¥°¥é¥ß¥ó¥°¥µ¡¼¥¯¥ë¡È¥ß¥ì¥Ë¥¢¥à¡É¤òΩ¤Á¾å¤²¤Þ¤·¤¿¤Î¤Ç¤´¾Ò²ð¤ò¤µ¤»¤Æ¤¤¤¿¤À¤¤¿¤¤¤È»×¤¤¤Þ¤¹¡£·Ç¼¨ÈĤΰƷï¤ÈľÀÜ´Ø·¸¤Ê¤¤¤È»×¤ï¤ì¤Þ¤¹¤¬ÍƼϴꤤ¤Þ¤¹¡£ ¥ß¥ì¥Ë¥¢¥à¤Ï¥µ¡¼¥¯¥ë¤È¤¤¤¦ÂμÁ¤òÀ¸¤«¤·¤Æ°åÎÅ¡¦Ê¡»ã¡¦¶µ°é¤ÎʬÌî¤Ç¹âµ¡Ç½¡¦Äã²Á³Ê¥Ó¥¸¥Í¥¹¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¹½ÃÛ¤òÌÜŪ¤È¤·¤¿¥×¥í¥°¥é¥ß¥ó¥°¥µ¡¼¥¯¥ë¤Ç¤¢¤ê¤Þ¤¹¡£ ¸½ºß¡¢¥á¥ó¥Ð¡¼¤Ï15̾ÄøÅ٤ǥۡ¼¥à¥Ú¡¼¥¸¤ò·úÀßÃæ¤Ç¤¢¤ê¡¢¸½ºßCGIÅù¤ÎÁȤá¤ëÊý¡¢VB¡¢VC++¡¢Delphi¡¢Java¡¢HTML¡¢DTP¡Ê¥Ç¥¶¥¤¥ó¡Ë¤ÎÆÀ°Õ¤ÊÊý¤òÊ罸Ãפ·¤Æ¤ª¤ê¤Þ¤¹¡£¥á¥ó¥Ð¡¼¤Ï¸½¿¦¤Î¥×¥í¥°¥é¥Þ¡¼¡¢DTP¹½ÃÛ¼Ô¡¢²ÈÄí¤Î¼çÉؤʤɤ¤¤í¤¤¤í¤ÊÊý¤Ç¹½À®¤µ¤ì¤Æ¤ª¤ê¤Þ¤¹¡£ ¥ß¥ì¥Ë¥¢¥à¤Ë»²²Ã¤¹¤ë¾ò·ï¤È¤·¤Æ¤ÏËܿͤ˾Q¤ÈÀÕǤ´¶¤È¹¥´ñ¿´¤¬É¬ÍפǤ¢¤ê¤½¤Î¾¤ÏÌä¤ï¤ì¤Þ¤»¤ó¡£ ¶½Ì£¤¬¤´¤¶¤¤¤Þ¤·¤¿¤é¥á¡¼¥ë¤Ë¤Æ¤ªÊÖ»ö¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹¡£ ¼ºÎ餤¤¿¤·¤Þ¤·¤¿¡£²ò¤«¤é¤Ê¤¤¤³¤È¤¬¤¢¤ê¤Þ¤·¤¿¤é»ä¤âÅê¹Æ¤µ¤»¤Æ¤¤¤¿¤À¤¯¤«¤â¤·¤ì¤Þ¤»¤ó¤Î¤Ç¤è¤í¤·¤¯¤ª´ê¤¤¤¤¤¿¤·¤Þ¤¹ |
¤Ï¤¸¤á¤Þ¤·¤Æ¡¢¤¤¤Ä¤âHP¸«¤µ¤·¤Æ¤¤¤¿¤À¤¤¤Æ¤Þ¤¹ ´¶¼Õ winsock¤ò¡Ê£ã¸À¸ì¤Ç¡Ë»È¤Ã¤Æ¥Á¥ã¥Ã¥È¤Î¥×¥í¥°¥é¥à¤ò½ñ¤¤¤Æ¤ß¤è¤¦¤È»×¤Ã¤¿¤ó¤Ç¤¹¤±¤ì¤É¡¢¥Þ¥ë¥Á¥¹¥ì¥Ã¥É¥¿¥¤¥×¤Î¥µ¡¼¥Ð¡¼¤Ç¥¯¥é¥¤¥¢¥ó¥È¤Ësend()¤¹¤ë»þ¡Ê¿ʬIP¥Þ¥ë¥Á¥¥ã¥¹¥È¤ÃÅÛ¤ò»È¤¦¤È»×¤¦¤ó¤Ç¤¹¤±¤É¡Ë¤Î¤ä¤êÊý¤Ë¤Ä¤¤¤Æ²¿¤«¾ðÊ󤪻ý¤Á¤Ç¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡© Àܳ¤µ¤ì¤¿¥¯¥é¥¤¥¢¥ó¥ÈÁ´¤Æ¤ËƱÊóÁ÷¿®¤Ç¤¤ë¤è¤¦¤Ë¤·¤¿¤¤¤ó¤Ç¤¹¤±¤ì¤É¡¢¤è¤í¤·¤¯¤ª´ê¤¤¤·¤Þ¤¹¡£ ¸å¡¢¾¡¼ê¤ËHP¤Ë¥ê¥ó¥¯Ä¥¤Ã¤Æ¤·¤Þ¤Ã¤¿¤ó¤Ç¤¹¤±¤É¤è¤í¤·¤«¤Ã¤¿¤Ç¤·¤ç¤¦¤«¡© ¤Þ¤º¤¤¤è¤¦¤À¤Ã¤¿¤éÏ¢Íí²¼¤µ¤¤ |
¥Þ¥ë¥Á¥¥ã¥¹¥È¤¹¤ë¤Ê¤é¡¢TCP ¤¸¤ã¤Ê¤¯¤Æ UDP ¤Ë¤Ê¤ë¤È»×¤¤¤Þ¤¹¤¬¡¢ ¤½¤³¤é¤Ø¤ó¤Î´ðÁÃÃμ±¤Ï¤¢¤ê¤Þ¤¹¤«? ¤¢¤È¡¢IPv4 ¤Ç¤Ï¥Þ¥ë¥Á¥¥ã¥¹¥È¤Ï optional ¤Ê¤ó¤Ç¤¹¤¬¡¢ÂçÄñ¤Î OS ¤Ë¤Ï¼ÂÁõ¤µ¤ì¤Æ¤ë¤Î¤«¤·¤é? ¤Ç¡¢Ëͤⶽ̣¤Ï¤¢¤ê¤Þ¤¹¤¬¡¢¤½¤³¤é¤Ø¤ó¤Ï¤Þ¤À¼«Ê¬¤Î¤â¤Î¤Ë¤·¤Æ¤¤¤Ê¤¤¤Î¤Ç¡¢ ÀâÌÀ¤Ç¤¤Ê¤¤¤Ç¤¹¡£ http://X68000.startshop.co.jp/~68user/net/link-book.html ¤Î ¡ÖUNIX ¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°Âè2ÈÇ Vol.1¡× ¤Ë¤È¤Ã¤Æ¤â¾Ü¤·¤¯½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤è¤«¤Ã¤¿¤éÇã¤Ã¤Æ¤ß¤Æ²¼¤µ¤¤¡£ # º£ÀâÌÀ¤·¤è¤¦¤È¤¹¤ë¤È¡¢¤³¤ÎËܤδݼ̤·¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¤Î¤Ç¡£ > \r\n\r\n ¤¬1²ó¤ÇÆɤá¤ëÊݾڤϤʤ¯¤Æ¡¢ ¤³¤³¤é¤Ø¤ó¤Î¤³¤È¤Ë¤Ä¤¤¤Æ¤â¡¢¤³¤ÎËܤ˾ܤ·¤¯½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¡£ ÍפÏ1¥Ð¥¤¥È¤º¤ÄÆɤá¤Ð¤¤¤¤¤ó¤Ç¤¹¤¬¡¢Ëè²ó read ¤·¤Æ¤ÏÃÙ¤¯¤Ê¤ë¤Î¤Ç Àè¤Ë¥Ð¥Ã¥Õ¥¡¤ËÆɤ߹þ¤ó¤À¤ê¡¢read ¤·¤Æ¤¤¤ë¤È¤¤Ë¥·¥°¥Ê¥ë¤¬Èô¤ó¤Ç¤¤¿ ¾ì¹ç¤Î EINTR ¤Ê¤É¤Ê¤É¡£ 8000±ß½Ð¤¹¤À¤±¤Ç¡¢5Ëü±ßʬ¤¯¤é¤¤¤ÎÃ챤¬ÆÀ¤é¤ì¤Þ¤¹¡£¤ª¤¹¤¹¤á¡£ > ¾¡¼ê¤ËHP¤Ë¥ê¥ó¥¯Ä¥¤Ã¤Æ¤·¤Þ¤Ã¤¿¤ó¤Ç¤¹¤±¤É¤è¤í¤·¤«¤Ã¤¿¤Ç¤·¤ç¤¦¤«¡© ¤É¤¦¤¾¡Á¡£ |
>> $send¤È¤«¡¢Å¬Åö¤ÊÊÑ¿ô¤ËÁ´Éô·Ò¤²¤ÆÂåÆþ¤·¡¢ >> print SOCKET $send; ¤È¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤ >¤È¤¤¤¦¤³¤È¤Ï¤¢¤êÆÀ¤Ê¤¤ ³Î¤«¤Ë¤½¤¦¤Ç¤·¤¿¡Ä$send¤ËÁ´ÉôÂåÆþ¤¹¤ë¤Î¤È HTTP¥Ð¡¼¥¸¥ç¥ó¤ò¿§¡¹ÊѤ¨¤ë¤Î¤òƱ»þ¤Ë»î¤·¤Æ¤Æº®Í𤷤Ƥ¿¤ß¤¿¤¤¤Ç¤¹¡Ê´À¡Ë ¤È¤¤¤¦¤ï¤±¤Ç¡¢¤ä¤Ã¤Ñ¤ê·Ò¤²¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¤Ç¤·¤¿¡£¥Ï¥¤¡£ ¤Þ¤¿¡¢HTTP¥Ð¡¼¥¸¥ç¥ó¾Êά¤â0.9°·¤¤¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤è¤¦¤Ç¤·¤¿¡£ ¤Ç¤â¾Êά¤¹¤ë¤È0.9¤Ë¤µ¤ì¤ë¤È¤¤¤¦¤Î¤Ï¤Á¤ç¤Ã¤È¶Ã¤¡£ ¤³¤ì¤Ï¥µ¡¼¥Ð¦¤Ç¤½¤¦ÀßÄꤷ¤Æ¤¤¤ë°Ù¤Ç¤¹¤è¤Í¡Ä¡©¤È¤¤¤¦»ö¤Ï¡Ä º£»þ0.9¤Ê¤ó¤Æ»È¤ï¤Ê¤¤¤·¡Ä1.0¤ä1.1¤ò¥Ç¥Õ¥©¥ë¥ÈÀßÄê¤Ë¤·¤Æ¤¤¤ë¥µ¡¼¥Ð¤â¤¢¤ë¤ó¤Ç¤·¤ç¤¦¤«¡© |
HTTP ¤Î¥Ð¡¼¥¸¥ç¥ó¾Êά»þ¤Ï 0.9 ¤Ç¤¢¤ë¤È RFC ¤Ç·è¤Þ¤Ã¤Æ¤¤¤Þ¤¹¡£ http://X68000.startshop.co.jp/~68user/net/rfc.html ¤È¤¤¤¦¤è¤ê¡¢¡Ö¾Êά¤·¤¿¤â¤Î¤Î¤ß¤ò 0.9 ¤È¤ß¤Ê¤¹¡×¤È¸À¤Ã¤¿Êý¤¬Àµ¤·¤¤¤«¤Ê¡£ GET /index.html HTTP/0.9 ¤È¤¤¤¦¥ê¥¯¥¨¥¹¥È¤Ï¤Ç¤¤Ê¤¤¤è¤¦¤Ê¤Î¤Ç¡£ |
ÊÖ»ö¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ ¥Þ¥ë¥Á¥¥ã¥¹¥È¤Ë¤Ä¤¤¤Æ¤Ç¤¹¤¬ winsock1,1¤Ç¤Ïoption°·¤¤¤ÇÀµ¼°¥µ¥Ý¡¼¥È¤Ç¤Ï¤Ê¤¯ 2,0¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤ë¤è¤¦¤Ê¤ó¤Ç¤¹¤¬¡¢¤¤¤¤¾ðÊ󤬤ޤÀÆÀ¤é¤ì¤Æ¤¤¤Þ¤»¤ó¡£ ¤â¤¦¤Á¤ç¤Ã¤ÈÄ´¤Ù¤Æ¡¢¤¦¤Þ¤¯¤¤¤Ã¤¿¤éÊó¹ð¤·¤Þ¤¹¡£ ¡Êº£windows¤Ç¤ä¤Ã¤Æ¤ë¤ó¤Ç68user¤µ¤ó¤Ï¤¢¤Þ¤ê¶½Ì£¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡Ë |
¤Ï¤¸¤á¤Þ¤·¤Æ¡£ ¡Ö¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°¤Î´ðÁÃÃμ±¡×Æɤޤ»¤Æ¤¤¤¿¤À¤¤Þ¤·¤¿¡£ £È£Ô£Ô£Ð¤Î½é¿´¼Ô¤Î¤¿¤á¡¢ÂçÊÑÊÙ¶¯¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ ¤³¤ÎÅÙproxy¥µ¡¼¥Ð¤ò»È¤Ã¤Æ¡¢£Õ£Ò£Ì¤ò¼è¤Ã¤Æ¤¯¤ë¥·¥¹¥Æ¥à¤ò³«È¯¤·¤Æ¤¤¤ë¤Î¤Ç¤¹¤¬¡¢¤¦¤Þ¤¯Æ°ºî¤·¤Þ¤»¤ó¡£ GET¤Î¥ì¥¹¥Ý¥ó¥¹¤Ç¡¢¥Ø¥Ã¥À¤Ç¤Ï¡Ö200 OK¡×¤¬Ê֤äƤ¤Æ¤¤¤ë¤Î¤Ë¡¢¥Ø¥Ã¥À¤·¤«¼è½Ð¤»¤Þ¤»¤ó¡£¤É¤ó¤Ê¸¶°ø¤¬¹Í¤¨¤é¤ì¤ë¤Ç¤·¤ç¤¦¤«¡£ ´Ä¶¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£ proxy¥µ¡¼¥Ð¡§NetscapeProxyServer ¼è½Ð¤¹URL¤Î¤¢¤ë¥µ¡¼¥Ð¡§Apache 1.3.9 |
> ¥Ø¥Ã¥À¤·¤«¼è½Ð¤»¤Þ¤»¤ó¡£ - ¤É¤¦¤¤¤¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¤Ã¤¿¤Î¤« - ´Ä¶ (Windows ¤Ê¤É) - ²¿¤ò¼Â¹Ô¤·¤¿¤Î¤« (telnet ¤Ç¤ä¤Ã¤¿¤È¤« perl ¤Ç½ñ¤¤¤¿¤È¤«) - ¤É¤Î URL ¤ò»î¤·¤Æ¤âƱ¤¸·ë²Ì¤Ë¤Ê¤ë¤Î¤« - ¼ÂºÝ¤Î¥³¡¼¥É¤Ï (perl ¤È C °Ê³°¤ï¤«¤ê¤Þ¤»¤ó¤±¤É) ¤Ê¤É¤¬¤ï¤«¤é¤Ê¤¤¤È²¿¤È¤â¸À¤¨¤Þ¤»¤ó¤¬¡¢¤È¤ê¤¢¤¨¤º telnet ¤Ç proxy ¥µ¡¼¥Ð¤Ë·Ò¤²¤Æ¡¢ GET http://www.yahoo.co.jp/ HTTP/1.0 Host: www.yahoo.co.jp (¶õ¹Ô) ¤ò»î¤·¤Æ¤ß¤Æ²¼¤µ¤¤¡£ > ¡Êº£windows¤Ç¤ä¤Ã¤Æ¤ë¤ó¤Ç68user¤µ¤ó¤Ï¤¢¤Þ¤ê¶½Ì£¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡Ë ºÇ¶á¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°¼«ÂΤËË°¤¤Æ¤·¤Þ¤¤¡¢ 3D ¤Ë¤Ï¤Þ¤Ã¤Æ¤¿¤ê¤·¤Þ¤¹(^^; ¤Á¤ç¤¤¤È¾Ò²ð¤·¤È¤¤Þ¤¹¤¬¡¢»²¹Í¤Ë¤·¤¿¤Î¤Ï¤³¤Î¥µ¥¤¥È¤Ç¤¹¡£ ¤È¤Æ¤â¤ï¤«¤ê¤ä¤¹¤¯½ñ¤«¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¶½Ì£¤Î¤¢¤ëÊý¤Ï¤¼¤Ò¡£ http://www.cim.pe.u-tokyo.ac.jp/~mitani/Java/java3d/index.html # Ĺǯ¤ÎÌ´¤Ç¤¢¤Ã¤¿¥Ý¥ê¥´¥ó¤ò¤°¤ê¤°¤ê²ó¤¹¤Î¤¬¼Â¸½¤Ç¤¤Æ¤¦¤ì¤·¤¤¡£ # º£¤Ï¥Æ¥¯¥¹¥Á¥ãŽ¤Ã¤¿¤ê¥·¥§¡¼¥Ç¥£¥ó¥°¤«¤±¤ëÊýË¡¤òÌϺ÷Ãæ¡Ä¡£ ## ¤³¤³¤é¤Ø¤ó¤ò²òÀ⤷¤Æ¤ë¥µ¥¤¥È¤Ê¤¤¤«¤·¤é? |
ÊÖ»ö¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£ >¡¡- ¤É¤¦¤¤¤¦¥ê¥¯¥¨¥¹¥È¤òÁ÷¤Ã¤¿¤Î¤« >¡¡- ´Ä¶ (Windows ¤Ê¤É) >¡¡- ²¿¤ò¼Â¹Ô¤·¤¿¤Î¤« (telnet ¤Ç¤ä¤Ã¤¿¤È¤« perl ¤Ç½ñ¤¤¤¿¤È¤«) >¡¡- ¤É¤Î URL ¤ò»î¤·¤Æ¤âƱ¤¸·ë²Ì¤Ë¤Ê¤ë¤Î¤« >¡¡- ¼ÂºÝ¤Î¥³¡¼¥É¤Ï (perl ¤È C °Ê³°¤ï¤«¤ê¤Þ¤»¤ó¤±¤É) ´Ä¶¡§£Õ£Î£É£Ø ¸À¸ì¡§£Ã¸À¸ì¤Çproxy¥µ¡¼¥Ð¤Ë¤ÏsocketÄÌ¿®¤Ç¥ê¥¯¥¨¥¹¥È¤òÁ÷¤Ã¤Æ¤¤¤Þ¤¹¡£ ¶ñÂÎŪ¤Ë¤Ï°Ê²¼¤ÎÆâÍƤòsend¤ÇÁ÷¤Ã¤Æ¤¤¤Þ¤¹¡£ GET http://www.yahoo.co.jp/ HTTP/1.1 Host:www.yahoo.co.jp (¶õ¹Ô) ¢¨proxy¥µ¡¼¥Ð¤¬¼ÒÆâ¤Î¥Þ¥·¥ó¤·¤«¥¢¥¯¥»¥¹¤Ç¤¤Ê¤¤ÀßÄê¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢ ¼ÂºÝ¤Ë¤Ïwww.yahoo.co.jp¤ÎÉôʬ¤Ï¼ÒÆâ¤Îhost̾¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹¡£ >> ¥Ø¥Ã¥À¤·¤«¼è½Ð¤»¤Þ¤»¤ó¡£ ¤³¤Î¸å¡¢¤â¤¦¤Á¤ç¤Ã¤ÈÄ´¤Ù¤Æ¤ß¤ë¤È¡¢ °ìÅÙÌܤÎrecv¤Ç¥ì¥¹¥Ý¥ó¥¹¥Ø¥Ã¥À¤¬Á÷¤é¤ì¤Æ¤¤Æ¡¢ ÆóÅÙÌܤÎrecv¤Ç¥¨¥ó¥Æ¥£¥Æ¥£¥Ü¥Ç¥£¤¬¼è½Ð¤µ¤ì¤ë¤³¤È¤¬¤ï¤«¤ê¤Þ¤·¤¿¡£ NetscapeProxyServer¤Î»ÅÍͤʤΤǤ·¤ç¤¦¤«¡£ ¤¢¤È¡¢¥ì¥¹¥Ý¥ó¥¹¥Ø¥Ã¥Àʸ»úÎó¤ÎÂçʸ»ú¾®Ê¸»ú¤Ç¤¹¤¬¡¢ ËܤʤɤǤÏ"-"¤Î¸å¤Îʸ»ú¤ÏÂçʸ»ú¤Ê¤Î¤Ç¤¹¤¬¡¢ ¾åµ¤Î´Ä¶¤Ç¹Ô¤¦¤È¾®Ê¸»ú¤Ë¤Ê¤ê¤Þ¤¹¡£ (Îã¡Ë¡ÖLast-Modified¡×¢ª¡ÖLast-modified¡×¤Ê¤É¡£¡£¡£ ¤³¤ì¤âNetscape Proxy Server¤Î»ÅÍͤʤΤǤ·¤ç¤¦¤«¡£ ¸æ¸ÃΤΤ³¤È¤¬¤¢¤ì¤Ð¶µ¤¨¤Æ¤¯¤À¤µ¤¤¡£ |
> °ìÅÙÌܤÎrecv¤Ç¥ì¥¹¥Ý¥ó¥¹¥Ø¥Ã¥À¤¬Á÷¤é¤ì¤Æ¤¤Æ¡¢ > ÆóÅÙÌܤÎrecv¤Ç¥¨¥ó¥Æ¥£¥Æ¥£¥Ü¥Ç¥£¤¬¼è½Ð¤µ¤ì¤ë¤³¤È¤¬¤ï¤«¤ê¤Þ¤·¤¿¡£ ½½Ê¬¤ÊÎ̤ΥХåե¡¤òÍÑ°Õ¤·¤Æ¡¢½½Ê¬¤Ê¥µ¥¤¥º¤ò»ØÄꤷ¤¿¤«¤é¤È¤¤¤Ã¤Æ¡¢ °ìÅ٤Πrecv ¤ÇÁ´¤Æ¤Î¥Ç¡¼¥¿¤ò¼è¤ê½Ð¤»¤ë¤È¤¤¤¦ÊݾڤϤ¢¤ê¤Þ¤»¤ó¡£ ¤³¤ì¤Ï read ¤Ç¤âƱ¤¸¤Ç¤¹¡£ http://X68000.startshop.co.jp/~68user/net/c-open.html ¤ÎºÇ¸å¤Ë¤Ï > ¤â¤·»ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¤ÎŤµ¤¬ 600 ¥Ð¥¤¥È¤Ê¤é¡¢ > ¡¡1²óÌܤΥ롼¥×: read_size == 256 > ¡¡2²óÌܤΥ롼¥×: read_size == 256 > ¡¡3²óÌܤΥ롼¥×: read_size == 88 > ¡¡4²óÌܤΥ롼¥×: read_size == 0 ¤È½ñ¤¤Þ¤·¤¿¤¬¡¢¤³¤ì¤ÏÁê¼ê¤¬¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤À¤«¤é¤Ç¤¢¤Ã¤Æ¡¢ ¥½¥±¥Ã¥È·Ðͳ¤À¤È¡¢ char buf[1000]; read(socket,buf,sizeof(buf)); ¤È¤·¤Æ¤â¡¢ 1²óÌܤÎread: read_size == 10 2²óÌܤÎread: read_size == 20 3²óÌܤÎread: read_size == 1 4²óÌܤÎread: read_size == 0 ¤Ê¤É¤È¤Ê¤ë²ÄǽÀ¤¬¤¢¤ê¤Þ¤¹ (¤³¤ÎÎã¤Ç¤Ï¥Ç¡¼¥¿Î̤Ï31¥Ð¥¤¥È)¡£ Í×¤Ï IP ¥Ñ¥±¥Ã¥È¤¬ºÙÀÚ¤ì¤ËÁ÷¤é¤ì¤Æ¤¤¿¤È¤¡¢read(recv) ¤¹¤ë¤È Í׵ᤵ¤ì¤¿¥µ¥¤¥º¤Î¥Ç¡¼¥¿¤¬ÆϤ¯¤Þ¤ÇÂԤĤΤǤϤʤ¯¡¢¤½¤Î¤È¤¤Þ¤Ç¤Ë ¼õ¤±¼è¤Ã¤Æ¤¤¤ë¥Ç¡¼¥¿¤òÊÖ¤¹¤ï¤±¤Ç¤¹¡£Î㤨¤Ð echo ¥µ¡¼¥Ð¤Ç¡¢ $|=1; print(SOCKET,"a"); sleep(5); print(SOCKET,"b"); sleep(5); print(SOCKET,"c"); sleep(5); ¤È¤¹¤ë¤È¡¢ºÙÀÚ¤ì¤Ê¥Ç¡¼¥¿¤¬Á÷¤é¤ì¤ë¤ï¤±¤Ç¤¹¡£ > (Îã¡Ë¡ÖLast-Modified¡×¢ª¡ÖLast-modified¡×¤Ê¤É¡£¡£¡£ Netscape Proxy Server ¤¬¤ï¤¶¤ï¤¶ÊÑ´¹¤·¤Æ¤¤¤ë¤Î¤«¡¢ WWW ¥µ¡¼¥Ð¤¬¤½¤¦¤¤¤¦¥Ø¥Ã¥À¤òÊÖ¤¹¤Î¤«¤Ï¤ï¤«¤ê¤Þ¤»¤ó¤¬¡¢ µ¬³Ê¾å¤ÏÂçʸ»ú¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó (RFC ¤Î¤É¤³¤«¤Ë½ñ¤¤¤Æ¤¢¤ë¤Ï¤º)¡£ Last-Modified/Last-modefied/LaSt-MODIfied ¤ÏƱ¤¸¤è¤¦¤Ë °·¤ï¤Ê¤¤¤È¤¤¤±¤Þ¤»¤ó¡£ ¤Á¤ç¤Ã¤ÈÍÑ»ö¤¬¤¢¤ê¡¢º£Æü¤ÎÌ뤫¤é¿ôÆü´Ö ÊÖÅú¤Ç¤¤Þ¤»¤ó¤Î¤Ç¤è¤í¤·¤¯¡£ |
> °ìÅ٤Πrecv ¤ÇÁ´¤Æ¤Î¥Ç¡¼¥¿¤ò¼è¤ê½Ð¤»¤ë¤È¤¤¤¦ÊݾڤϤ¢¤ê¤Þ¤»¤ó¡£ ¤¢¡¢¤³¤ì¤Ï read_size = recv(s,buf,sizeof(buf),0); ¤Î¤³¤È¤Ç¤¹¡£ read_size = recv(s,buf,sizeof(buf),MSG_WAITALL); ¤Ê¤é¡¢Á´¥Ç¡¼¥¿¤òÂÔ¤Á¤Þ¤¹¤Î¤Ç¡¢recv ¤Ï1²ó¤À¤±¼Â¹Ô¤¹¤ì¤Ð OK ¤Ç¤¹¡£ ¤¿¤À¤· MSG_WAITALL ¤ò»ØÄꤷ¤Æ¤â¡¢¥·¥°¥Ê¥ë¼õ¿®¡¦¥³¥Í¥¯¥·¥ç¥óÀÚÃÇ»þ¤Ï¡¢ Á´¥Ç¡¼¥¿¤òÂÔ¤¿¤º¤Ë recv ¤«¤éÌá¤ê¤Þ¤¹¡£ |
¤É¤â¡¢½é¤á¤Þ¤·¤Æ¡£¤È¤Û¤Û£×£×£×¡Ý¥é¥¦¥ó¥¸¤«¤éÍè¤Þ¤·¤¿¡£ ¡Ö¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°¤Î´ðÁÃÃμ±¡×¤¬ÂçÊѤ¿¤á¤Ë¤Ê¤ê¤Þ¤¹¡£ ƱÍͤʻö¤Ï½ñÀҡʥ饯¥ÀÀÄËܡˤˤâ½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¤³¤Á¤é¤¬¤º¤Ã¤È²ò¤«¤ê¤ä¤¹¤¤¤Ç¤¹¡£ ¥³¥ó¥Æ¥ó¥ÄÀ©ºî¸æ¶ìÏ«ÍͤǤ¹¡¡¡õ¡¡Í¤êÆñ¤¦¸æºÂ¤¤¤Þ¤¹¡£ ------------------------------ ¤¹¤Ã¤´¤¯ÊÙ¶¯¤Ë¤Ê¤ë²òÀâ¤Î¤¿¤á¡¢·«¤êÊÖ¤·Æɤà»ö¤Ë¤Ê¤ë¤Î¤Ç¤¹¤¬¡¢¥Ù¡¼¥¸ÇÛ¿§¤¬¡¢¥Æ¥¥¹¥È¤¬¹õ·ÏÅý¤Ê¤¯Çò·ÏÅý¤Ç¤¢¤ë¤¿¤áÌܤ¬¾¯¡¹ÉÕ¤«¤ì¤Þ¤¹¡¢¤Þ¤¿¥Ð¥Ã¥¯¥«¥é¡¼¤È¥Æ¥¥¹¥È¤ÎÌÀ°Å¤¬¶á´ó¤Ã¤Æ¤¤¤ë¤Î¤Ç¤³¤ì¤âÌܤËÉÕ¤«¤ì¤ëÍ×°ø¤Î¤è¤¦¤Êµ¤¤¬¤·¤Þ¤¹¡£¤Þ¤Ã¤³¤³¤¤¤é¤Ï¸Ä¿ÍŪÓϹ¥¤ÎÉôʬ¤À¤È»×¤¤¤Þ¤¹¡£ ¤½¤¦¤¤¤¦»ö¤Ç¡¢¥Ð¥Ã¥¯¥«¥é¡¼¤È¥Æ¥¥¹¥È¥«¥é¡¼¤Î»ØÄê¤ò³°Éô¥¹¥¿¥¤¥ë¥·¡¼¥È¤Ç»ØÄꤵ¤»¤è¤¦¤È»×¤¤¡¢¤½¤Î°Ù¤Ë¤Ï¼è¤ê¤¢¤¨¤º¥³¥ó¥Æ¥ó¥Ä¤Î³¬Áؤò´Þ¤á¤Æ¥í¡¼¥«¥ë¤Ë¥À¥¦¥ó¤·¡¢¤½¤Î¸å¥í¡¼¥«¥ëÆâ¤Ç³¬Áؤò¸Ù¤¤¤ÀHTML¥Õ¥¡¥¤¥ë¤Î½¤Àµ¤òPerl¤Ç¹Ô¤¦»ö¤Ë¤·¤Þ¤·¤¿¡£ ¤½¤¦¤¤¤¦»ö¤Ç¡¢º£¡¢ºÆµ¢Åª¥Ç¥£¥ì¥¯¥È¥ê¥¨¥ó¥È¥ê¥µ¡¼¥Á¥¹¥¯¥ê¥×¥È¤òÀ©ºîÃæ¤Ç¤¹¡£¡£¡£¡£¡£ ¡ô¤¤¤Ä¤âËÜÂê¤ÎÁ°¤Ë¡¢¡Ö¤¢¤ì¤ä¤ë¡¢¤³¤ì¤ä¤ë¡×¤È»þ´Ö¤¬¤«¤«¤ë»ä¤Ç¤·¤¿(¾Ð) #¤È¤³¤í¤Ç¡¢68user¤µ¤ó¤Ï¡¢¤È¤Û¤Û¥é¥¦¥ó¥¸¤Ç¤Î¡ÖB-cus¡×¤µ¤ó¤ÈƱ°ì¤ÊÊý¤Ç¤·¤ç¤¦¤«¡©¡¢¡¢¡¢¤Þ¤Ã¤¤¤é¤ÌÁ§º÷¤ÎÈÏáƤʤΤǤ¹¤¬(^^; |
cksum¥³¥Þ¥ó¥É¤Ë¤Ä¤¤¤ÆÃΤꤿ¤¤¤Î¤Ç¤¹¤¬¡¢ ¡cksum¥³¥Þ¥ó¥É¤Ï¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¤É¤¦¤¤¤Ã¤¿¥Á¥§¥Ã¥¯¤ò¹Ô¤¦¤Ç ¤·¤ç¤¦¤«¡© ¢£Ã¸À¸ì¤«¤écksum¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤«¤±¤¿»þ¤Ë¡¢Àµ¾ï¤Ë½ªÎ»¤·¤¿¤«¡¢ ¤â¤·¤¯¤Ï¡¢°Û¾ï½ªÎ»¤·¤¿¤«¤ÎȽÃǤϹԤ¨¤ë¤Î¤Ç¤·¤ç¤¦¤«¡© ¤â¤·¡¢¹Ô¤¨¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢¾ÜºÙ¤Ê¥¨¥é¡¼¾ðÊó¤Ï¤É¤¦¤¤¤Ã¤¿¤â¤Î¤¬ ¤¢¤ë¤Î¤Ç¤·¤ç¤¦¤«¡£ |
> ¥Ù¡¼¥¸ÇÛ¿§¤¬¡¢¥Æ¥¥¹¥È¤¬¹õ·ÏÅý¤Ê¤¯Çò·ÏÅý¤Ç¤¢¤ë¤¿¤áÌܤ¬¾¯¡¹ÉÕ¤«¤ì¤Þ¤¹ ¤Ç¤¢¤ì¤Ð perl -pi.bak -e 's/BGCOLOR="#575757" TEXT="#FFFFFF"/BGCOLOR=white TEXT=black/' *.html ¤Ê¤É¤¬¤ª¼ê·Ú¤Ç¤¹¡£ > ¤Þ¤Ã¤³¤³¤¤¤é¤Ï¸Ä¿ÍŪÓϹ¥¤ÎÉôʬ¤À¤È»×¤¤¤Þ¤¹¡£ Á°¤Ë¡ÖÇطʤ¬¹õ/ʸ»ú¤¬Çò¤ÇÆɤߤ䤹¤¤¡×¤È¸À¤ï¤ì¤¿¤³¤È¤â¤¢¤ê¤Þ¤¹¡£ ¿Í¤Ë¤è¤Ã¤Æ¹¥¤ß¤¬°ã¤¦¤Î¤ÇÆñ¤·¤¤¤Ç¤¹¤Í¡£ > ¡¢ ´ÝÉÕ¤¿ô»ú¤Ïµ¡¼ï°Í¸ʸ»ú¤Ê¤Î¤Ç¡¢»È¤Ã¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£ > cksum¥³¥Þ¥ó¥É¤Ï¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¤É¤¦¤¤¤Ã¤¿¥Á¥§¥Ã¥¯¤ò¹Ô¤¦¤Ç¤·¤ç¤¦¤«¡© http://www.jp.FreeBSD.org/cgi/cvsweb.cgi/src/usr.bin/cksum/ ¤òÆɤó¤Ç²¼¤µ¤¤¡£¤Ê¤¼¤½¤¦¤¤¤¦¥³¡¼¥É¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤«¤òÃÎ¤í¤¦¤È¤¹¤ë¤È ¤Û¤È¤ó¤É¿ô³Ø¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¤Î¤Ç¡¢ËͤˤÏÀâÌÀ¤Ç¤¤Þ¤»¤ó¡£ > £Ã¸À¸ì¤«¤écksum¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤«¤±¤¿»þ¤Ë¡¢Àµ¾ï¤Ë½ªÎ»¤·¤¿¤«¡¢ > ¤â¤·¤¯¤Ï¡¢°Û¾ï½ªÎ»¤·¤¿¤«¤ÎȽÃǤϹԤ¨¤ë¤Î¤Ç¤·¤ç¤¦¤«¡© system(3) ¤ÎÌá¤êÃͤǤ狼¤ê¤Þ¤¹¡£0 ¤Ê¤éÀµ¾ï¡¢°Û¾ï½ªÎ»¤Ê¤é Ìá¤êÃͤò 8bit ±¦¥·¥Õ¥È¤·¤¿¤â¤Î¤¬½ªÎ»¥¹¥Æ¡¼¥¿¥¹ (cksum ¤¬ return ¤·¤¿¤ê exit ¤·¤¿ÃÍ)¡£ |