<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ryan Joy (atxryan) &#187; IE7</title>
	<atom:link href="http://ryanjoy.com/tag/ie7/feed/" rel="self" type="application/rss+xml" />
	<link>http://ryanjoy.com</link>
	<description>Web developer living and playing in Austin, Texas</description>
	<lastBuildDate>Sat, 11 Feb 2012 06:45:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>IE 6 and 7 hit by hack attack code</title>
		<link>http://ryanjoy.com/2009/11/ie-6-and-7-hit-by-hack-attack-code/</link>
		<comments>http://ryanjoy.com/2009/11/ie-6-and-7-hit-by-hack-attack-code/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 15:38:26 +0000</pubDate>
		<dc:creator>atxryan</dc:creator>
				<category><![CDATA[Shared]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[IE7]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[IE 6 and 7 hit by hack attack code. IE6 and 7 have what looks like a buffer overflow vulnerability caused by a strange intersection of CSS, innerHTML and large JavaScript arrays. No exploits in the wild yet but it’s only a matter of time.
]]></description>
			<content:encoded><![CDATA[<div><p><a href="http://www.itpro.co.uk/blogs/daveyw/2009/11/22/ie-6-and-7-hit-by-hack-attack-code/">IE 6 and 7 hit by hack attack code</a>. IE6 and 7 have what looks like a buffer overflow vulnerability caused by a strange intersection of CSS, innerHTML and large JavaScript arrays. No exploits in the wild yet but it’s only a matter of time.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://ryanjoy.com/2009/11/ie-6-and-7-hit-by-hack-attack-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE 6 and 7 hit by hack attack code</title>
		<link>http://ryanjoy.com/2009/11/ie-6-and-7-hit-by-hack-attack-code-2/</link>
		<comments>http://ryanjoy.com/2009/11/ie-6-and-7-hit-by-hack-attack-code-2/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 15:38:26 +0000</pubDate>
		<dc:creator>atxryan</dc:creator>
				<category><![CDATA[Shared]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[IE7]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://ryanjoy.com/?guid=04445e4f4cda56abee3f31bc074de78f</guid>
		<description><![CDATA[IE 6 and 7 hit by hack attack code. IE6 and 7 have what looks like a buffer overflow vulnerability caused by a strange intersection of CSS, innerHTML and large JavaScript arrays. No exploits in the wild yet but it’s only a matter of time.
]]></description>
			<content:encoded><![CDATA[<div><p><a href="http://www.itpro.co.uk/blogs/daveyw/2009/11/22/ie-6-and-7-hit-by-hack-attack-code/">IE 6 and 7 hit by hack attack code</a>. IE6 and 7 have what looks like a buffer overflow vulnerability caused by a strange intersection of CSS, innerHTML and large JavaScript arrays. No exploits in the wild yet but it’s only a matter of time.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://ryanjoy.com/2009/11/ie-6-and-7-hit-by-hack-attack-code-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Breaking with protocol</title>
		<link>http://ryanjoy.com/2008/01/breaking-with-protocol/</link>
		<comments>http://ryanjoy.com/2008/01/breaking-with-protocol/#comments</comments>
		<pubDate>Wed, 23 Jan 2008 05:44:37 +0000</pubDate>
		<dc:creator>Ryan Joy</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[IE7]]></category>
		<category><![CDATA[Internet Explorer]]></category>

		<guid isPermaLink="false">http://www.atxryan.com/2008/01/22/breaking-with-protocol/</guid>
		<description><![CDATA[Are you or your users are getting a &#8220;This page contains both secure and nonsecure items&#8221; message in Internet Explorer? You might mistakenly believe that it is a problem isolated to IE, but if you check the bottom right corner of Firefox you&#8217;ll see that all is not well there either: The issue here is [...]]]></description>
			<content:encoded><![CDATA[<p>Are you or your users are getting a &#8220;This page contains both secure and nonsecure items&#8221; message in Internet Explorer?</p>
<p><img src="http://ryanjoy.com/wp-content/uploads/2008/01/20080122_security_warning.png" alt="This page contains both secure and nonsecure items: Do you want to display the nonsecure items?" /></p>
<p>You might mistakenly believe that it is a problem isolated to IE, but if you check the bottom right corner of Firefox you&#8217;ll see that all is not well there either:<br />
<img src="http://ryanjoy.com/wp-content/uploads/2008/01/20080122_security_warning_firefox.png" /></p>
<p>The issue here is a simple one to understand. The browser is rendering a page over <accronym title="Secure Sockets Layer">SSL</accronym> denoted by the https:// protocol in the address bar. However, there are elements within that page that are being served via the nonsecure http:// protocol.  These elements may be images, frames, stylesheets, javascript, etc</p>
<p>By now you might be asking how you can serve up resources to visitors over either protocol without maintaining separate sites or stylesheets.  The most obvious and easiest way to accomplish this has been to change any absolute URLs to relative paths.</p>
<p>Change:</p>
<pre><code>
&lt;img src="http://www.example.com/images/header.png" /&gt;
div#header {
  background-image: url(http://www.example.com/images/header.png) no-repeat;
}</code></pre>
<p>To:</p>
<pre><code>
&lt;img src="/images/header.png" /&gt;
div#header {
  background-image: url(/images/header.png) no-repeat;
}</code></pre>
<p><strong>However, what happens if you maintain your static files on a separate server or sub-domain and you can not link to them using a relative URL? Is it possible to still maintain a single stylesheet (assuming, of course, that both sites are secured by trusted certificate)?</strong></p>
<p>I think so, yes.  You can link to things in a sudo-absolute manner by omitting the leading protocol. For example:</p>
<pre><code>
&lt;img src="//www.example.com/images/header.png" /&gt;
div#header {
  background-image: url(//www.example.com/images/header.png) no-repeat;
}</code></pre>
<p>I&#8217;ve only done limited testing on IE and Firefox thus far, but it seems to work fine.  I&#8217;m curious to hear anyone&#8217;s thoughts on the pros and cons of this method. Interestingly, it&#8217;s difficult to find anything that been written about this on th web.  All the keywords I try bring up nothing but whitepapers and RFCs.</p>
<p><strong>Update: 01.23.2008 5:40pm</strong></p>
<p>Ok, so after digging and digging and digging I&#8217;ve finally found what I&#8217;m looking for!  This behavior is, in fact, in the HTTP 1.1 standard as specified in <a href="http://tools.ietf.org/html/rfc2068#section-3.2.1">RFC 2068</a> and <a href="http://tools.ietf.org/html/rfc2396#appendix-A">RFC 2396</a>:</p>
<pre><code>
   URIs in HTTP can be represented in absolute form or relative to some
   known base URI, depending upon the context of their use. The two
   forms are differentiated by the fact that absolute URIs always begin
   with a scheme name followed by a colon.

          URI            = ( absoluteURI | relativeURI ) [ "#" fragment ]

          absoluteURI    = scheme ":" *( uchar | reserved )

          relativeURI    = net_path | abs_path | rel_path

          net_path       = "//" net_loc [ abs_path ]
          abs_path       = "/" rel_path
          rel_path       = [ path ] [ ";" params ] [ "?" query ]
</code></pre>
<p>When specifying a <code>relativeURI</code>, the most common usages are the <code>abs_path</code> and <code>rel_path</code> like the following:</p>
<pre><code>
/* abs_path */
div#header {
  background-image: url(/images/header.png) no-repeat;
}
&lt;!-- rel_path --&gt;
&lt;img src="images/tree.jpg" alt="Oak" /&gt;
</code></pre>
<p>However, using <code>net_path</code> to optionally include the http: or https: is apparently perfectly valid as well.  It&#8217;s so obscure or rarely used that a Google search for &#8220;net_path&#8221; will suggest that you correct your search to &#8220;set_path&#8221;.</p>
<p>It looks funny and it feels wrong, but it works.</p>]]></content:encoded>
			<wfw:commentRss>http://ryanjoy.com/2008/01/breaking-with-protocol/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>

