• Save
Os Pruett Sessionnotes
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Os Pruett Sessionnotes

on

  • 785 views

 

Statistics

Views

Total Views
785
Views on SlideShare
785
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Os Pruett Sessionnotes Presentation Transcript

  • 1. !quot;#$%#&'%()*%+),-./)0 !quot;##$%&'(%)quot;#'*%+',!-,('.//0 12+3'4+5quot;)) !quot;#$%&'()*+,-'.%#/'%0'112.-+&'3%45/%#(('..+*6%0'7%.'/8+('.9%%:-&%&)+.%;#+/+*6% +*&/53-('.%#%*-<7'/%54%&/#3'2544.9%%=)+.%.'..+5*%'$;15/'.%&)'.'%&/#3'2544.9 (1#2%.0%!quot;#$3 >5/%&)'%;-/;5.'.%54%&)+.%.'..+5*?%0'@11%3'4+*'%!quot;#$%#.%&)'%-.'%54%(5<<5*%A#8#.(/+;&% &'()*+,-'.%&5%-;3#&'%(5*&'*&%+*%#%0'7%;#6'%0+&)5-&%;'/45/<+*6%#*%'*&+/'%;#6'% /'15#39%% B5.&%54&'*?%0'@11%-.'%&)'%CBDE&&;F',-'.&%57quot;'(&%%G0)+()%H@11%#77/'8+#&'%#.%CEFI%&5% (5<<-*+(#&'%7'&0''*%7/50.'/%#*3%.'/8'/?%7-&%0'%0+11%#1.5%3+.(-..%&)'%.52(#11'3% .(/+;&%&#6%)#(J9 !quot;#$%#;;1+(#&+5*.%'.(#;'%&)'%&K/#**K%54%&)'%;#6'%15#3%L%&)'%7#*'%54%0'7% ;/56/#<<'/.%45/%&)'%1#.&%3'(#3'9%%=)'%CEF%57quot;'(&%L%(5-;1'3%0+&)%A#8#.(/+;&@.% #7+1+&K%&5%<53+4K%&)'%#;;'#/#*('%54%#%;#6'%7K%<#*-;-1#&+*6%&)'%M5(-<'*&%N7quot;'(&% B53'1%GMNBI%L%#1150.%3'8'15;'/.%&5%7-+13%/+()%+*&'/*'&%#;;1+(#&+5*.%-.+*6%5*1K% .&#*3#/3%7/50.'/%&'()*5156+'.9 (1#2%#,)%()*%+),-./)03 >5/%&)'%;-/;5.'.%54%&)+.%.'..+5*?%0'7%.'/8+('.%#/'%3'4+*'3%#.%.&#*3#/3%<'&)53.%45/% '$()#*6+*6%3#&#%7'&0''*%&05%(5<;-&'/.%5*%#%*'&05/J9%%=05%.&#*3#/3.%45/%0'7% .'/8+('.%#/'%ON!P%GO+<;1'%N7quot;'(&%!(('..%P/5&5(51I%#*3%FQO=%GF';/'.'*&#&+5*#1% O&#&'%=/#*.4'/I9 !%45)6678%(7,6'9%:$#;<6) R)#&@.%&)'%.<#11'.&%;5..+71'%'$#<;1'%&)#&%+11-.&/#&'.%#11%&)'%'..'*&+#1%#.;'(&.%54% !quot;#$%#*3%0'7%.'/8+('.S%%>+/.&?%0'%*''3%&)'%05/13@.%.+<;1'.&%0'7%.'/8+('9%%H%&)+*J%H% 45-*3%&)+.%#&%&)'%T9O9%M';#/&<'*&%54%E5<'1#*3%O'(-/+&K9%%:K%*50?%<5.&%;'5;1'%#/'% #0#/'%54%&)'%(515/2(53'3%&)/'#&%1'8'1.%-.'3%7K%&)'%658'/*<'*&9%%=)'%658'/*<'*&% 3'8'15;'3%#%FQO=27#.'3%0'7%.'/8+('%&)#&%/'&-/*.%&)'%(-//'*&%&)/'#&%1'8'19%%H4%K5-% <#J'%#*%E==P%UQ=%/',-'.&%&5%&)+.%TFDV http://www.dhs.gov/dhspublic/getAdvisoryCondition K5-%6'&%7#(J%&)+.%1+&&1'%.*+;;'&%54%CBDV <?xml version=quot;1.0quot; encoding=quot;UTF-8quot; ?> <THREAT_ADVISORY CONDITION=quot;ELEVATEDquot; /> D'&@.%7-+13%#*%!quot;#$%#;;1+(#&+5*%&)#&%,-'/+'.%&)+.%0'7%.'/8+('?%;#/.'.%&)'%/'&-/*'3% 1 6728'2&9':quot;;'!quot;+<$=quot;
  • 2. CBD?%#*3%3+.;1#K.%&)'%/'.-1&.9 >5/%.+<;1'%!quot;#$%'$#<;1'.?%H%-.'%#%&+*K%A#8#.(/+;&%1+7/#/K%H%3'8'15;'3%(#11'3%#quot;#$2 .+<;1'9quot;.9%%H&%(/'#&'.%#%(/5..27/50.'/%%CBDE&&;F',-'.&%57quot;'(&%#*3%.+<;1+4+'.%.5<'% 54%&)'%CEF%3'&#+1.9%%H&%3'4+*'.%#*%57quot;'(&%(#11'3%.+<;1K%W!quot;#$X9%%R'@11%-.'%&)#&%1+&&1'% 1+7/#/K%+*%&)+.%'$#<;1'9 E'/'@.%&)'%(53'%45/%5-/%'$#<;1'V 1 <HTML> 2 <HEAD> 3 <script language=quot;Javascriptquot; src=quot;ajax-simple.jsquot;></script> 4 5 <script language=quot;Javascriptquot;> 6 function init () { 7 var ajax = new Ajax (quot;/cgi-bin/dx3/dhsproxy.cgiquot;, 8 quot;quot;, 9 quot;GETquot;, 10 callback); 11 ajax.request (); 12 } 13 14 function callback (req) { 15 // Parse the XML response. 16 var tag = req.responseXML.getElementsByTagName ('THREAT_ADVISORY'); 17 var span = document.getElementById (quot;spanThreatLevelquot;); 18 span.innerHTML = tag[0].getAttribute ('CONDITION'); 19 } 20 </script> 21 </HEAD> 22 23 <BODY onload=quot;init();quot;> 24 Threat Level: <span id=quot;spanThreatLevelquot;></span> 25 </BODY> 26 </HTML> =)+.%'$#<;1'%;/53-('.%#%0'7%;#6'%&)#&%155J.%1+J'%&)+.V E50%35'.%+&%#11%05/JS%%R)'*%&)'%;#6'%15#3.%+*&5%&)'%7/50.'/?%#*%'8'*&%)#*31'/% #-&5<#&+(#11K%(#11%&)'%init()%4-*(&+5*%G1+*'%YZI9%%=)'%init()%4-*(&+5*%G.&#/&+*6%5*% 1+*'%[I%(/'#&'.%%#*%!quot;#$%57quot;'(&9%%=)'%45-/%;#/#<'&'/.?%.&#/&+*6%5*%1+*'%?%#/'%&)'%0'7% .'/8+('%0'@/'%(#11+*6?%#*K%;#/#<'&'/.%&)'%.'/8+('%/',-+/'.%G*5*'%+*%5-/%'$#<;1'I?% &)'%E==P%<'&)53%0'@11%-.'%&5%(5<<-*+(#&'%0+&)%&)'%.'/8'/%GE==P%UQ=%+*%5-/% 2 6728'2&9':quot;;'!quot;+<$=quot;#
  • 3. '$#<;1'I?%#*3%4+*#11K%&)'%*#<'%54%#%A#8#.(/+;&%4-*(&+5*%&5%(#11%0)'*%&)'%.'/8'/% /'.;5*3.9 !4&'/%7-+13+*6%&)'%/',-'.&?%0'%.'*3%+&%5*%+&.%0#K%+*%1+*'%]]9%%=)'%/',-'.&%+.% #.K*()/5*5-.%L%5-/%;/56/#<%(#*%(5*&+*-'%35+*6%5&)'/%&)+*6.%0)+1'%&)'%;'*3+*6% .'/8'/%/',-'.&%(5<;1'&'.9 R)'*%&)'%.'/8'/%/'.;5*3.?%&)'%7/50.'/%#-&5<#&+(#11K%4+/'.%544%&)'%callback() 4-*(&+5*%#*3%;#..'.%+&%#%;#/#<'&'/%(5*&#+*+*6%&)'%.'/8'/@.%/'.;5*.'%G1+*'%]^I9 R+&)%CBDE&&;F',-'.&%(#11.?%+4%&)'%.'/8'/%/';1+'.%0+&)%CBD%3#&#?%&)#&%3#&#%+.% ;#/.'3%+*&5%#%MNB%GM5(-<'*&%N7quot;'(&%B53'1I%.&/-(&-/'%45/%K5-9%%O5%&)'%&)/''%1+*'.% 54%(53'%+*%callback()%quot;-.&%'$&/#(&%&)'%_N`MH=HN`%#&&/+7-&'%8#1-'%4/5<%&)'% /'&-/*'3%CBD%=EFQ!=a_N`MH=HN`%'1'<'*&%#*3%;15;%&)#&%+*&5%#*%E=BD%.;#*% &#69%%N*1K%&)'%(5*&'*&.%54%&)'%.;#*%&#6%+.%#44'(&'3?%&)'%/'.&%54%&)'%0'7%;#6'%/'<#+*.% -*()#*6'39 O5%0)K%3+3%0'%<#J'%5-/%!quot;#$%/',-'.&%&5%/cgi-bin/dx3/dhsproxy.cgi%#*3%*5&%&)'% MEO%0'7%.'/8+('?%%http://www.dhs.gov/dhspublic/getAdvisoryCondition%S% :'(#-.'%#*%CBDE&&;F',-'.&%.'/8'/%/',-'.&%(#*%5*1K%&#1J%&5%&)'%.#<'%.'/8'/%&)#&% 3'1+8'/'3%&)'%5/+6+*#1%0'7%;#6'9%%=5%&#1J%&5%&)'%MEO%.'/8'/?%0'%*''3%&5%;/5$K%&)'% /',-'.&%&)/5-6)%5-/%.'/8'/9%%R'@11%3+.(-..%;/5$+'.%<5/'%1#&'/?%7-&%45/%*50%H@11%.)50% K5-%&)'%dhsproxy.cgi%;/5$K%.(/+;&%-.'3%+*%&)+.%'$#<;1'V 1 #!/usr/bin/perl 2 3 use strict; 4 use LWP::Simple; 5 6 # Query the DHS server and put its response into 7 # the variable $xml. 8 my $xml = get quot;http://www.dhs.gov/dhspublic/getAdvisoryConditionquot;; 9 10 print quot;Content-type: text/xmlnnquot;; 11 print $xml; =)+.%;/5$K%+.%#%.)5/&%P'/1%;/56/#<9%%=)'%P'/1%;/56/#<%<#J'.%&)'%/',-'.&%&5%&)'% MEO%.'/8'/%#*3%&)'*%45/0#/3.%&)#&%3#&#%7#(J%&5%5-/%A#8#.(/+;&%!quot;#$%;/56/#<9 3 6728'2&9':quot;;'!quot;+<$=quot;
  • 4. =#2#%>.<)6.&)0 =)+.%.'..+5*%+.%#11%#75-&%&)'%'$(+&+*6%05/13%54%;1-<7+*6%L%)50%&5%7-+13%#11%&)'%;+;'.% #*3%8#18'.%#*3%(5**'(&5/.%&5%6'&%4/5<%#%3#&#%.5-/('%&5%&)'%-.'/@.%'K'7#11.9 R'%&)+*J%54%(5<;-&'/.%#.%(5<;1'$%<#()+*'.?%7-&%&)'K@/'%/'#11K%5*1K%(#;#71'%54% 35+*6%&)/''%&)+*6.V F'#3+*6%3#&#%4/5<%.5<'0)'/'%G#%4+1'?%#%3'8+('?%#%/'1#&+5*#1%3#&#7#.'?%#%*'&05/J% • .5(J'&I • =/#*.45/<+*6%3#&#%G#33+*6%Y%&5%&)'%8#/+#71'%+?%CNF+*6%#11%&)'%7+&.%+*%#%<'<5/K% 7-44'/?%#;;'*3+*6%&)'%.&/+*6%W05/13X%&5%&)'%'*3%54%&)'%.&/+*6%W)'115XI • R/+&+*6%3#&#%.5<'0)'/'%G#%3'8+('?%#%4+1'?%#%(5<;-&'/%.(/''*I R+&)%&)+.%.+<;1'%<53'1?%<#*K%(5<;-&'/%5;'/#&+5*.%#/'%/'3-('3%&5%&)'%(5*(';&%54%#% ;+;'1+*'V%3#&#%'*&'/.%&)'%;+;'1+*'?%+.%&/#*.45/<'3%7K%8#/+5-.%;/5('..'.?%#*3%4+*#11K% .;+11.%5-&%&)'%5&)'/%'*39 =)'%4+6-/'%7'150%.)50.%5*'%'$#<;1'%54%#*%!quot;#$bR'7%O'/8+('%;+;'1+*'9%% >+6-/'%]9%!%3+8+.+5*%54%1#75/%7'&0''*%7/50.'/%#*3%.'/8'/ !%0'7%.'/8+('%'$&/#(&.%3#&#%4/5<%#%/'1#&+5*#1%3#&#7#.'%#*3%;#(J#6'.%+&%-;%#.%CBD?% &)'*%;#..'.%&)'%CBD%&5%#%;/5$K%G0)+()%0'@11%3+.(-..%1#&'/I?%&)'%;/5$K%45/0#/3.%&)'% 3#&#%&5%&)'%7/50.'/?%0)'/'%#%A#8#.(/+;&%;/5('..%&/#*.45/<.%&)'%CBD%-.+*6%#*3%COD% .&K1'.)''&%L%&/#*.1#&+*6%+&%&5%E=BD%&)#&@.%4+*#11K%3+.;1#K'3%+*%&)'%7/50.'/9 =)'%35&&'3%1+*'%+*3+(#&'.%&)'%3+8+.+5*%54%1#75/%7'&0''*%&)'%.'/8'/%#*3%&)'%7/50.'/9% =)'/'%#/'%5&)'/%0#K.%&5%#((5<;1+.)%&)'%.#<'%/'.-1&9 4 6728'2&9':quot;;'!quot;+<$=quot;#
  • 5. >+6-/'%Y9%!*%#1&'/*#&+8'%3+8+.+5*%54%1#75/ H*%&)+.%.'(5*3%'$#<;1'?%*5&+('%&)#&%&)'%.&#/&+*6%#*3%'*3+*6%;5+*&.%#/'%+3'*&+(#19% =)'%65#1%+.%.&+11%&5%'$&/#(&%3#&#%4/5<%&)'%/'1#&+5*#1%3#&#7#.'%#*3%6'&%+&%&5%&)'% 7/50.'/%#.%E=BD9%%:-&%+*%&)+.%'$#<;1'%<5/'%05/J%+.%)#*31'3%7K%&)'%.'/8'/9% R)#&@.%.'*&%#(/5..%&)'%*'&05/J%G#(/5..%&)'%35&&'3%1+*'I%+.%E=BD?%*5&%CBD9%%=)'% CBD2E=BD%&/#*.1#&+5*%+.%)#*31'3%5*%&)'%.'/8'/9 R)+()%<'&)53%+.%7'&&'/S%%>+/.&?%K5-%*''3%&5%3'4+*'%0)#&%W7'&&'/X%<'#*.9%%=)+.%+.% &)'%4+/.&%)+*&%&)#&%<'13+*6%!quot;#$%0+&)%0'7%.'/8+('.%1'#3.%&5%#%.'/+'.%54%&/#3'2544.9 H&@.%&)'.'%&/#3'2544.%&)#&%0'@11%'$;15/'%)'/'9 ?,#')@7AA%B),7C%%!quot;#$%-0D%E6)$%F%E6#01%F%3 H@11%#..-<'%+4%K5-@/'%#&&'*3+*6%&)+.%.'..+5*?%K5-@8'%#1/'#3K%<#3'%&)+.%()5+('9%%:-&% &)'%()5+('%+*8518'.%&/#3'2544.V !quot;#$%/-*.%5*%#*K%<53'/*%7/50.'/%0+&)5-&%;/5;/+'&#/K%;1-62+*.%G#..-<+*6%&)#&% • quot;#8#.(/+;&%+.%&-/*'3%5*I?%7-& • !quot;#$%+.%*5&%#.%#3';&%#&%8+.-#1%'44'(&.%#*3%<-1&+<'3+#%#.%>1#.)%5/%>1'$9% c5-%(#*%<#J'%#%6553%(#.'%&)#&%A#8#.(/+;&%+.%#%6#032#04-1%1#*6-#6'%&)#&@.% 4-*3#<'*&#11K%7/+&&1'%#*3%-*.#4'9%%!*3%K5-@3%)#8'%.5<'%8#1+3%;5+*&.9%%:-&% A#8#.(/+;&%+.%<-()%7'&&'/%L%<5/'%/'1+#71'?%<5/'%(5*.+.&'*&?%#*3%0+&)%7'&&'/% 3'8'15;<'*&%&551.%&)#*%#%4'0%K'#/.%#659%% ?,#')@7AA%GHC%?776I.20 `-<'/5-.%!quot;#$%&551J+&.%)#8'%'8518'3%,-+(J1K%+*%&)'%1#.&%&05%K'#/.9%%Q#()%)#.%+&.% 50*%.&/'*6&).9%%=)'%&/#3'2544.?%#*3%0)+()%&551J+&%G+4%#*KI%+.%#;;/5;/+#&'%45/%K5-/% ;/5quot;'(&%0+11%3';'*3%1#/6'1K%5*%K5-/%3'8'15;<'*&%'*8+/5*<'*&%#*3%&)'%.J+11.%#*3% 7+#.'.%54%K5-/%3'8'15;'/.9%% O5<'%&551J+&.%#/'%&+6)&1K%(5-;1'3%&5%5*'%7#(J2'*3%.'/8'/%1#*6-#6'9%%>5/%'$#<;1'?% &)'%MRF%GM+/'(&%R'7%F'<5&+*6I%&551J+&%0#.%3'.+6*'3%&5%'$;5.'%A#8#%.'/8'/%57quot;'(&.% 0+&)+*%A#8#.(/+;&9%%=)+.%7+*3.%MRF%/#&)'/%&+6)&1K%&5%A#8#%5*%&)'%.'/8'/%.+3'9%%H%35*@&% -.'%A#8#?%.5%45/%<'?%&)'%&/#3'2544%+.%(1'#/9%%:-&%'8'*%+4%K5-%35%-.'%A#8#%5*%&)'%.'/8'/% 5 6728'2&9':quot;;'!quot;+<$=quot;
  • 6. .+3'?%K5-%)#8'%&5%3'&'/<+*'%+4%MRF%<#J'.%.'*.'9%%R)#&%+4%K5-%0#*&%&5%#(('..%#% 0'7%.'/8+('%0+&)5-&%65+*6%&)/5-6)%A#8#%5*%&)'%.'/8'/%.+3'S%%R+11%K5-%7'%45/('3%&5% -.'%MRF%45/%.5<'%!quot;#$%#(('..?%#*3%#*5&)'/%&551J+&%45/%5&)'/%0'7%.'/8+('%#(('..S% E50%<-()%0+11%&)+.%(5<;1+(#&'%K5-/%#;;1+(#&+5*.S H@<%*5&%;+(J+*6%5*%MRF%L%+&%#((5<;1+.)'.%+&.%;-/;5.'%,-+&'%0'11%L%H@<%quot;-.&%-.+*6%+&% #.%5*'%'$#<;1'9%%Q8'/K%&551J+&%0+11%)#8'%+&.%50*%.'&%54%&/#3'2544.9%%_)55.'%(#/'4-11K9 ?,#')@7AA%GJC%!0K&/1,7&7L0%-0D%+K&/1,7&7L0 !quot;#$%+.%#%<+.*5<'/9%%!quot;#$%+.%!.K*()/5*5-.%A#8#.(/+;&%#*3%CBD?%7-&%&)'%CEF%57quot;'(&% 5;'/#&'.%+*%'+&)'/%#.K*()/5*5-.%5/%.K*()/5*5-.%<53'9% !quot;#$%1'&.%K5-%71#.&%5-&%<-1&+;1'%&+*K%/',-'.&.%&5%&)'%.'/8'/%.+<-1&#*'5-.1K9%%R)'*% &)'%.'/8'/%/'.;5*3.?%K5-/%!quot;#$%;/56/#<%J+(J.%544%#%A#8#.(/+;&%/5-&+*'%&5%)#*31'%&)'% +*(5<+*6%3#&#9 =)'%&/#3'2544.V !.K*()/5*5-.%/',-'.&.%(5<'%7#(J%+*%#*K%5/3'/9%%F',-'.&.%!?%:?%#*3%_%<+6)&% • /'&-/*%+*%:2_2!%5/3'/9%%c5-%)#8'%&5%3'#1%0+&)%&)+.%+*%K5-/%(53'%G5/%K5-/%&551J+&% 35'.I9 • OK*()/5*5-.%(#11.%<#K%715(J%(53'%'$'(-&+5*%-*&+1%&)'%.'/8'/%/'.;5*3.9 T.'%#.K*()/5*5-.%(#11.9 ?,#')@7AA%GMC%=#2#%E7,;#20C%NOP%-0D%Q+RS%-0%T+U%-0D%3 !6#+*?%!quot;#$%+.%#%<+.*5<'/9%%=)'%WCX%.&#*3.%45/%CBD?%7-&%CEF%(#11.%(#*%/'&-/*%#*K% J+*3%54%&'$&%3#&#9%%R)#&@.%&)'%7'.&%3#&#%45/<#&S CBD%+.%#%0+3'1K2#35;&'3%.&#*3#/39 • AON`%+.%'#.+'/%45/%A#8#.(/+;&%&5%3+6'.&9 • _Od%G5/%5&)'/%3'1+<+&'3%&'$&I%+.%<5/'%(5<;#(&9 • CBD%#*3%AON`%(#//K%<5/'%54%&)'+/%50*%;/58'*#*('%L%&)+.%(#*%<#J'%+&%'#.+'/% • 0)'*%K5-@/'%&/K+*6%&5%#(('..%#%;55/1K235(-<'*&'3%0'7%.'/8+('9% 6 6728'2&9':quot;;'!quot;+<$=quot;#
  • 7. NOP%:$#;<6) <person> <firstName>John</firstName> <lastName>Smith</lastName> <address> <city>New York, NY</city> <zipCode>10021</zipCode> <streetAddress>21 2nd Street</streetAddress> </address> <phoneNumbers> <number>212 732-1234</number> <number>646 123-4567</number> </phoneNumbers> </person> Q+RS%:$#;<6) { quot;firstNamequot;: quot;Johnquot;, quot;lastNamequot;: quot;Smithquot;, quot;addressquot;: { quot;cityquot;: quot;New York, NYquot;, quot;zipCodequot;: 10021, quot;streetAddressquot;: quot;21 2nd Streetquot; }, quot;phoneNumbersquot;: [ quot;212 732-1234quot;, quot;646 123-4567quot; ] } T+U%:$#;<6) “John”,”Smith”,”21 2nd Street”,”New York, NY”,10021,”212 732- 1234”,”646 123-4567” =)'%AON`%8'/.-.%CBD%3'7#&'%1'#3.%&5%#*5&)'/%&/#3'2544V%CEF%8.9%&)'%O(/+;&%=#6% )#(J9 ?,#')@7AA%GVC%N5W%-0D%+/,.<2%?#X =)'%CBDE&&;F',-'.&%57quot;'(&%5*1K%(5<<-*+(#&'.%0+&)%&)'%.'/8'/%&)#&%5/+6+*#11K% 3'1+8'/'3%&)'%0'7%;#6'9%% =)+.%1+<+&#&+5*%+.%(#11'3%&)'%(/5..235<#+*%5/%.#<'%5/+6+*%;51+(K9%%!1150+*6%CEF% /',-'.&.%#(/5..%<-1&+;1'%.'/8'/.%+.%(5*.+3'/'3%+*.'(-/'9% 7 6728'2&9':quot;;'!quot;+<$=quot;
  • 8. H4%K5-%*''3%#(('..%&5%#%0'7%.'/8+('%5*%#*5&)'/%.'/8'/?%K5-%*''3%&5%#(('..%+&%8+#%#% ;/5$K9 (1#2Y0%#%>,7$K !%0'7%;/5$K%#1150.%/',-'.&.%+*&'*3'3%45/%5*'%.'/8'/%&5%;#..%&)/5-6)%#*5&)'/% .'/8'/9%% P/5$+'.%.+3'2.&';%&)'%(/5..235<#+*%;/571'<9%%c5-/%!quot;#$%;/56/#<%G/-**+*6%+*%&)'% 7/50.'/?%3'1+8'/'3%7K%K5-/%.'/8'/I%#10#K.%&#1J.%5*1K%&5%K5-/%.'/8'/9%%H4%K5-/%#;;% *''3.%&5%&#1J%&5%.5<'%/'<5&'%.'/8'/?%+&%35'.%+&%8+#%K5-/%.'/8'/9 >+6-/'%Z9%%!quot;#$%#*3%&)'%(/5..235<#+*%;/571'< =)+.%<58'.%'$&/#%05/J%&5%K5-/%.'/8'/9%%c5-%G5/%.5<'5*'%K5-%05/J%0+&)I%0+11%*''3% &5%.'&%-;%#*3%<#+*&#+*%&)'.'%;/5$+'.9%% !%+.;<6)%!<#/1)%>,7$K =)'%!;#()'%0'7%.'/8'/%;/58+3'.%#%.+<;1'%7-&%;50'/4-1%;/5$K%(#;#7+1+&K9%=)'% ProxyPass%#*3%ProxyPassReverse%/-1'.%&/#*.1#&'%0'7%#33/'..'.%5*%K5-/%.'/8'/% +*&5%0'7%#33/'..'.%5*%#%3+44'/'*&%.'/8'/9% =5%(/'#&'%#*%!;#()'%ProxyPass%/-1'?%'3+&%&)'%!;#()'%0'7%.'/8'/%.%httpd.conf (5*4+6-/#&+5*%4+1'9%!33%&05%/-1'.V% ProxyPass /ysearch/ http://api.search.yahoo.com/WebSearchService/V1/ ProxyPassReverse /ysearch/ http://api.search.yahoo.com/WebSearchService/V1/ 8 6728'2&9':quot;;'!quot;+<$=quot;#
  • 9. ProxyPass%#*3%ProxyPassReverse%/-1'.%)#8'%&)+.%45/<V% ProxyPass pattern substitution ProxyPassReverse pattern substitution !*K%TFD%&)#&%(5*&#+*.%&)'%.&/+*6%;#&&'/*%0+11%)#8'%&)#&%;#/&%54%&)'%TFD%/';1#('3% 0+&)%&)'%.&/+*6%.-7.&+&-&+5*9 D'&%.%.#K%K5-/%#;;1+(#&+5*%+.%/-**+*6%5*%http://www.example.com9%R+&)%&)'.'%&05% ;/5$K%/-1'.%+*%;1#('?%#*K%/',-'.&%&5V http://www.example.com/ysearch/ +.%#-&5<#&+(#11K%/'3+/'(&'3%&5V% http://api.search.yahoo.com/WebSearchService/V1/ (,.2.&X%Z7L,%R[&%>,7$K !*5&)'/%;/5$K%5;&+5*%+.%&5%0/+&'%#%.'/8'/2.+3'%0'7%.(/+;&%&)#&%)#*31'.%#11%;/5$K% <'()#*+(.%+&.'149%R)K%05-13%K5-%35%&)+.%0)'*%.5%<#*K%5;&+5*.%#/'%7-+1&%+*&5%&)'% 0'7%.'/8'/S%P'/)#;.%K5-%/'%0'7%)5.&+*6%(5<;#*K%35'.*%&%1'&%K5-%<53+4K%0'7% .'/8'/%(5*4+6-/#&+5*.9%N/%;'/)#;.%K5-%0#*&%&5%0/+&'%#%;/5$K%&)#&%.%&#+15/'3%&5%K5-/% .;'(+4+(%#;;1+(#&+5*9 =)'%P'/1%.(/+;&%7'150%;/5$+'.%&)'%c#)55e%O'#/()%.'/8+('9%H*%4-*(&+5*?%+&@.%+3'*&+(#1% &5%5-/%'#/1+'/%'$#<;1'.?%7-&%+&%/',-+/'.%*5%()#*6'.%&5%&)'%!;#()'%0'7%.'/8'/% (5*4+6-/#&+5*9% #!/usr/bin/perl #--------------------------------------------- # A simple, specific, proxy as a standalone # server script. #--------------------------------------------- use strict; use LWP::Simple; # Constants my $REAL_URL = quot;http://api.search.yahoo.com/WebSearchService/V1/webSearchquot;; my $APPID = quot;Perl+API+install+testquot;; # Append the Yahoo! Search appid to the parameter string. my $parameters = $ENV{QUERY_STRING} . quot;&appid=$APPIDquot;; # Retrieve data from the Yahoo! server using the Perl LWP module. my $data = get quot;$REAL_URL?$parametersquot;; 9 6728'2&9':quot;;'!quot;+<$=quot;
  • 10. # Output the HTTP header followed by the retrieved XML. # Anything a server CGI script sends to standard output # is sent back to the browser. print quot;Content-type: text/xmlnnquot;; print $data; H*&'11+'6'*&%;/5$+'.%35*@&%*''3%&5%7'%15*6%#*3%(5<;1+(#&'39%%:-&%0)#&%+4%K5-%35*@&% 0#*&%&5%0/+&'%#%;/5$K%L%5/%0)#&%+4%K5-%(#*@&S%%c5-/%)5.&+*6%.'/8+('%<#K%*5&%1'&%K5-% 4+331'%#/5-*3%0+&)%&)'+/%;/5$K%/-1'.9%% ?1)%+TW>?%?#X%5#/I =)'%E=BD%O_FHP=%&#6%1'&.%K5-%'<7'3%A#8#.(/+;&%+*%K5-/%0'7%;#6'%+*%5*'%54%&05% 0#K.V <script> Your Javascript goes here. </script> 5/% <script src=”http://random.server/somescript.js”> H&@.%&)+.%.'(5*3%<'&)53%L%;-11+*6%#%A#8#.(/+;&%4+1'%4/5<%.5<'%.'/8'/%L%&)#&@.%&)'% .5-/('%54%&)'%O_FHP=%&#6%)#(J9%%c5-%(#*%6/#7%*5&%5*1K%A#8#.(/+;&%(53'?%7-&%3#&#%#.% 0'119%%N*1K%3#&#%45/<#&&'3%#.%A#8#.(/+;&%57quot;'(&.%(#*%7'%&/#*.4'/'3?%7-&%&)+.%45/<#&?% AON`?%+.%6#+*+*6%+*%;5;-1#/+&K9 ?,#')@7AA%G]C%+R!>%-0D%W:+? ON!P%GO+<;1'%N7quot;'(&%!(('..%P/5&5(51I%+.%#*%CBD27#.'3%;/5&5(51%-.-#11K% &/#*.;5/&'3%-.+*6%&)'%E==P%;/5&5(519%%FQO=%GF';/'.'*&#&+5*#1%O&#&'%=/#*.4'/I% -.'.%&)'%.'<#*&+(.%54%E==P%+&.'14%&5%+<;1'<'*&%0'7%.'/8+('.9 !%&/+8+#1%ON!P%0'7%.'/8+('%/',-+/'.%.+6*+4+(#*&1K%<5/'%W.&-44X%&)#*%#*%',-+8#1'*&% FQO=%.'/8+('%35'.9%%H&%+.%;5..+71'%&5%<#J'%#%ON!P%/',-'.&%4/5<%A#8#.(/+;&?%7-&%#% 4#+/%#<5-*&%54%;1-<7+*6%+.%/',-+/'3%L%75&)%&5%<#J'%&)'%/',-'.&%#*3%;#/.'%&)'% /'.-1&.9%%:K%(5<;#/+.5*?%FQO=%/',-'.&.%#/'%54&'*%.+<;1'%E==P%PNO=%#*3%UQ=% /',-'.&.%L%&#+15/2<#3'%45/%CEF%GCBDE&&;F',-'.&I%(#11.9 =)'/'%#/'%A#8#.(/+;&%1+7/#/+'.%&)#&%(#*%;'/45/<%ON!P%(#11.9%%H@<%*5&%#0#/'%54% #*K5*'%0)5@.%-.+*6%&)'<9 10 6728'2&9':quot;;'!quot;+<$=quot;#
  • 11. ?,#')@7AA%G^C%T6.)&2%-0D%+),-), =)'%(1+'*&%+.%&)'%7/50.'/9%%=)'%.'/8'/%+.%5-/%0'7%.'/8'/9%%N-/%(1+'*&%<#()+*'%+.%1'..% ;50'/4-1%&)#*%&)'%.'/8'/V%&)'%45/<'/%<#K%7'%#%1#;&5;%(5<;-&'/%0+&)%+*.-44+(+'*&% <'<5/K%#*3%#%.150%*'&05/J%(5**'(&+5*9%%N-/%.'/8'/%+.%#%7+6?%7''4K%<5*.&'/%0+&)% 6+6.%54%F!B%#*3%#%=]%(5**'(&+5*9 R+&)%!quot;#$%#*3%0'7%.'/8+('.%0'%6'&%&5%()55.'%0)+()%.+3'%54%&)+.%4'*('%0'%3/5;%5-/% #;;1+(#&+5*%156+(%5*9%%R)#&%<#J'.%.'*.'S%%!<5*6%&)'%+..-'.%)'/'%#/'V%;'/45/<#*('?% .+<;1+(+&K?%#*3%.'(-/+&K9 =)'%7/50.'/%5*%&)'%(1+'*&%0+11%)#8'%1'..%;/5('..+*6%;50'/?%7-&%'8'*%.5?%<5.&% <53'/*%P_.%(#*%'#.+1K%#*3%,-+(J1K%)#*31'%3K*#<+(%/'*3'/+*6%54%E=BD%+*%#% 7/50.'/9%%D'&@.%.#K%K5-%*''3%&5%;5;-1#&'%#%1+.&%75$%+*%#*%E=BD%45/<9%%D'&@.%.#K%K5-% 0#*&%&5%3+.;1#K%&)'%fg%T9O9%O&#&'.9%%=)'%3#&#%(5*.+.&.%54%fg%&052()#/#(&'/%O&#&'% #77/'8+#&+5*.?%#*3%&)'%O&#&'%*#<'.%&)'K%/';/'.'*&%G'969?%Wd!X%#*3%Wd+/6+*+#XI9%% !%.'/8'/2('*&/+(%#;;/5#()%)#.%&)'%.'/8'/%#;;1+(#&+5*%#(('..%#%3#&#%&#71'?%/'#3%+*% &)'%+*45?%#*3%45/<#&%&)'%E=BD%45/%#11%&)'%OQDQ_=%#*3%NP=HN`%&#6.9%%=)+.%E=BD%+.% .'*&%7#(J%&5%&)'%7/50.'/%G8+#%#*%CBDE&&;F',-'.&%(#11I%#*3%&)'%/'&-/*'3%3#&#%+.% .+<;1K%;15;;'3%+*&5%#%MHd%&#6%-.+*6%+**'/E=BD9%%=)+.%.51-&+5*%<+*+<+h'.%&)'% ;/5('..+*6%5*%&)'%7/50.'/9 !%7/50.'/2('*&/+(%#;;/5#()%)#.%&)'%7/50.'/%<#J'%#%/',-'.&%54%#%-.a.&#&'.%.'/8+('?% 0)+()%.'*3.%7#(J%&)'%#77/'8+#&+5*.%#*3%O&#&'%*#<'.%+*%.5<'%&K;'%54%3#&#% .&/-(&-/'%GCBD?%AON`?%5/%&#723'1+<+&'3%&'$&I9%%=)'%7/50.'/%;#/.'.%&)'%3#&#?% 3K*#<+(#11K%(5*.&/-(&.%&)'%OQDQ_=%1+.&%75$?%#*3%3+.;1#K.%+&9%% =)'%7/50.'/2('*&/+(%#;;/5#()%<#K%5/%<#K%*5&%&/#*.4'/%1'..%3#&#%&)#*%&)'%.'/8'/2 ('*&/+(%<'&)539%%H&%3';'*3.%5*%&)'%3#&#%45/<#&%-.'39%%=#723'1+<+&'3%&'$&%0+11%7'% <5/'%(5<;#(&?%0)+1'%G3';'*3+*6%5*%&)'%.()'<#I%CBD%<#K%7'%1#/6'/9 P/5('..+*6%5*%&)'%.'/8'/2.+3'%+.*@&%#;;/'(+#71K%3+44'/'*&%L%<5.&%54%&)'%75&&1'*'(J% 0+11%;/57#71K%7'%/'#3+*6%&)'%T9O9%O&#&'.%3#&#%4/5<%3+.J9 O5%0)+()%0#K%+.%7'&&'/S%%H@3%;+(J%&)'%7/50.'/2('*&/+(%#;;/5#()%7'(#-.'%H@3%'*3%-;% 0+&)%#%/'-.'#71'%-.a.&#&'%.'/8+('%&)#&%H%(#*%1+J'1K%-.'%'1.'0)'/'%1#&'/%5*9%%H@8'% (/'#&'3%#*%#/&+4#(&%G&)'%-.a.&#&'.%.'/8+('I%&)#&%+.%*5&%75-*3%&5%#%.+*61'%-.'%GE=BD% >NFB%1+.&%75$'.I9%%H@8'%(/'#&'3%#%6'*'/#1+h'3%0'7%.'/8+('%L%#17'+&%+&%#%8'/K%.+<;1'% 5*'9 11 6728'2&9':quot;;'!quot;+<$=quot;