<?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>The WebDevil &#187; Browsers</title>
	<atom:link href="http://dmitry.shaposhnik.name/category/browsers/feed/" rel="self" type="application/rss+xml" />
	<link>http://dmitry.shaposhnik.name</link>
	<description>Enjoy development</description>
	<lastBuildDate>Mon, 24 May 2010 01:29:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PowerDNS URL records and redirector</title>
		<link>http://dmitry.shaposhnik.name/2008/07/25/powerdns-url-records-and-redirector/</link>
		<comments>http://dmitry.shaposhnik.name/2008/07/25/powerdns-url-records-and-redirector/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 19:43:21 +0000</pubDate>
		<dc:creator>dm</dc:creator>
				<category><![CDATA[Browsers]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[PowerDNS]]></category>
		<category><![CDATA[lighttpd]]></category>

		<guid isPermaLink="false">http://dmitry.shaposhnik.name/?p=205</guid>
		<description><![CDATA[В PowerDNS есть пара плюшек, которые я раньше не замечал. Одну из них &#8211; записи &#8220;URL&#8221; я сегодня попробовал, настроил и остался вполне доволен.
Что же такое URL-запись? Это фича PowerDNS, при помощи которой можно делать редирект домена на заданный URL.
Например, запись выглядит как
some.domain.com URL http://other.domain.com/some_domain_com
На самом деле в поле со значением записи может быть ссылка [...]]]></description>
			<content:encoded><![CDATA[<p>В PowerDNS есть пара плюшек, которые я раньше не замечал. Одну из них &#8211; записи &#8220;URL&#8221; я сегодня попробовал, настроил и остался вполне доволен.</p>
<p>Что же такое URL-запись? Это фича PowerDNS, при помощи которой можно делать редирект домена на заданный URL.<br />
Например, запись выглядит как</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">some.domain.com URL http://other.domain.com/some_domain_com</div></div>
<p>На самом деле в поле со значением записи может быть ссылка куда угодно.<br />
В конфиге сервера нужно указать</p>
<div class="codecolorer-container ini default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="ini codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">...<br />
<span style="color: #000099;">fancy-records</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">yes</span><br />
<span style="color: #000099;">urlredirector</span><span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;">77.120.99.180</span><br />
...</div></div>
<p>Когда приходит запрос к DNS&#8217;у для домена some.domain.com отдается 77.120.99.180, указанный в конфиге, как если бы это была обычная &#8220;А&#8221;-запись.<br />
Браузер отрезолвив имя идет на http://some.domain.com. На этом адресе висит http-сервер (я повесил lighttpd), у которого скрипт лезет в БД и для указанного домена ищет соответствующую ему URL-запись и редиректит браузер туда. Все просто и тривиально.</p>
<p>Для lighttpd у меня конфиг дополнился такими строками:</p>
<div class="codecolorer-container ini default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="ini codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$SERVER<span style="">&#91;</span><span style="color: #933;">&quot;socket&quot;</span><span style="">&#93;</span> <span style="color: #000066; font-weight:bold;">==</span> <span style="color: #933;">&quot;77.120.99.180:80&quot;</span> <span style="">&#123;</span><br />
&nbsp; &nbsp; $HTTP<span style="">&#91;</span><span style="color: #933;">&quot;host&quot;</span><span style="">&#93;</span> <span style="color: #000066; font-weight:bold;">=</span>~ <span style="color: #933;">&quot;(.*)&quot;</span> <span style="">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; magnet.attract-raw-url-to <span style="color: #000066; font-weight:bold;">=</span><span style="color: #660066;"> <span style="">&#40;</span></span><span style="color: #933;">&quot;/var/www/lighttpd/pdns-url-redirector.lua&quot;</span><span style="">&#41;</span><br />
&nbsp; &nbsp; <span style="">&#125;</span><br />
<span style="">&#125;</span></div></div>
<p>То есть все что приходит незамедлительно обрабатывается упомянутым lua-скриптом. Почему <a href="http://www.lua.org/">lua</a>? С ним работает <a href="http://trac.lighttpd.net/trac/wiki/Docs:ModMagnet">mod_magnet</a>, и мне было интересно написать этот скриптик. Вот он:</p>
<div class="codecolorer-container lua default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><div class="lua codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #b1b100;">require</span> <span style="color: #ff0000;">&quot;luasql.mysql&quot;</span><br />
env <span style="color: #66cc66;">=</span> <span style="color: #b1b100;">assert</span> <span style="color: #66cc66;">&#40;</span>luasql.mysql<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><br />
con <span style="color: #66cc66;">=</span> <span style="color: #b1b100;">assert</span> <span style="color: #66cc66;">&#40;</span>env:connect<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;dnsdb&quot;</span>, <span style="color: #ff0000;">&quot;dns_user&quot;</span>, <span style="color: #ff0000;">&quot;dns_pass_for_readonly_records_table&quot;</span>, <span style="color: #ff0000;">&quot;localhost&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><br />
domain <span style="color: #66cc66;">=</span> lighty.request<span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;Host&quot;</span><span style="color: #66cc66;">&#93;</span> <br />
<br />
mysql_replacements <span style="color: #66cc66;">=</span> <span style="color: #66cc66;">&#123;</span> <br />
&nbsp; <span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\0</span>&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>0&quot;</span>,<br />
&nbsp; <span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>n&quot;</span>,<br />
&nbsp; <span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\r</span>&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>r&quot;</span>,<br />
&nbsp; <span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\'</span>&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span>,<br />
&nbsp; <span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\&quot;</span>&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span><span style="color: #000099; font-weight: bold;">\&quot;</span>&quot;</span>,<br />
&nbsp; <span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\0</span>26&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>Z&quot;</span>,<br />
&nbsp; <span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\b</span>&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>b&quot;</span>,<br />
&nbsp; <span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span>&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>t&quot;</span>,<br />
<span style="color: #66cc66;">&#125;</span><br />
<br />
<span style="color: #b1b100;">function</span> fixsql <span style="color: #66cc66;">&#40;</span>s<span style="color: #66cc66;">&#41;</span><br />
&nbsp; <span style="color: #b1b100;">return</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">string.gsub</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">tostring</span> <span style="color: #66cc66;">&#40;</span>s<span style="color: #66cc66;">&#41;</span>, <span style="color: #ff0000;">&quot;[%z<span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\'</span><span style="color: #000099; font-weight: bold;">\&quot;</span><span style="color: #000099; font-weight: bold;">\0</span>26<span style="color: #000099; font-weight: bold;">\b</span><span style="color: #000099; font-weight: bold;">\t</span>]&quot;</span>, <br />
&nbsp; &nbsp; <span style="color: #b1b100;">function</span> <span style="color: #66cc66;">&#40;</span>str<span style="color: #66cc66;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">return</span> mysql_replacements <span style="color: #66cc66;">&#91;</span>str<span style="color: #66cc66;">&#93;</span> <span style="color: #b1b100;">or</span> str<br />
&nbsp; &nbsp; <span style="color: #b1b100;">end</span> <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><br />
<span style="color: #b1b100;">end</span> <span style="color: #808080; font-style: italic;">-- fixsql</span><br />
<br />
cur <span style="color: #66cc66;">=</span> <span style="color: #b1b100;">assert</span> <span style="color: #66cc66;">&#40;</span>con:<span style="color: #b1b100;">execute</span><span style="color: #66cc66;">&#40;</span> <span style="color: #b1b100;">string.format</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;SELECT content FROM records WHERE `type` = 'URL' AND `name` = '%s'&quot;</span>, fixsql<span style="color: #66cc66;">&#40;</span>domain<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span><br />
result <span style="color: #66cc66;">=</span> cur:fetch<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><br />
<span style="color: #b1b100;">if</span> result <span style="color: #b1b100;">then</span><br />
&nbsp; &nbsp; redirect_to <span style="color: #66cc66;">=</span> <span style="color: #b1b100;">string.format</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;%s&quot;</span>, result<span style="color: #66cc66;">&#41;</span><br />
<span style="color: #b1b100;">else</span><br />
&nbsp; &nbsp; redirect_to <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;http://daemons.org.ua/&quot;</span><br />
<span style="color: #b1b100;">end</span><br />
<br />
cur:close<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><br />
con:close<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><br />
env:close<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><br />
<br />
<span style="color: #808080; font-style: italic;">--lighty.content = { string.format(&quot;SELECT content FROM records WHERE `type` = 'URL' AND `name` = '%s'&quot;, fixsql(domain) ) &nbsp;}</span><br />
<span style="color: #808080; font-style: italic;">--lighty.header[&quot;Content-Type&quot;] = &quot;text/plain&quot;</span><br />
<span style="color: #808080; font-style: italic;">--return 200</span><br />
<br />
lighty.header<span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">&quot;Location&quot;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">=</span> redirect_to<br />
<span style="color: #b1b100;">return</span> <span style="color: #cc66cc;">301</span></div></div>
<p>Комментарий начинается с &#8220;&#8211;&#8221;. Закоментарены строки для отладки скрипта.<br />
Для соединения с мускулем из lua доставил пакет liblua5.1-sql-mysql-2.</p>
<p>Скрипт писал долго, но это было интересно. И небесполезно =)</p>
<hr />
<p><strong>UPD</strong>: во избежание DoS/DDoS атаки на мускуль возможны два варианта апгрейда метода:<br />
1. По крону раз в 5 минут генерить sqlite-БД состоящую из одной таблицы из двух полей &#8211; domain, target<br />
2. Раз в 5 минут генерить сам скрипт с вынесенными в него в виде хеша записями. Тогда скрипт вообще никуда подглядывать не будет.</p>
]]></content:encoded>
			<wfw:commentRss>http://dmitry.shaposhnik.name/2008/07/25/powerdns-url-records-and-redirector/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>IE is DUMB &#8211; security hole</title>
		<link>http://dmitry.shaposhnik.name/2007/08/10/ie-is-dumb-security-hole/</link>
		<comments>http://dmitry.shaposhnik.name/2007/08/10/ie-is-dumb-security-hole/#comments</comments>
		<pubDate>Fri, 10 Aug 2007 11:52:39 +0000</pubDate>
		<dc:creator>dm</dc:creator>
				<category><![CDATA[Browsers]]></category>

		<guid isPermaLink="false">http://0804team.kiev.ua/dm/blog/2007/08/10/ie-is-dumb-security-hole/</guid>
		<description><![CDATA[http://www.securitylab.ru/news/301002.php:
Администраторы веб-узлов и просто люди обычно пользуются FTP, чтобы загрузить файлы с компьютера на сайт &#8211; и обратно. Как всегда, компания Microsoft решила облегчить жизнь пользователю: встроила в Windows функции для работы с протоколом передачи данных.
Internet Explorer &#8211; поддерживает FTP исключительно для удобства. Браузер  заботливо включит в сохраненный файл(*.html, *.htm, *.mht) &#8211; имя пользователя [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://www.securitylab.ru/news/301002.php'>http://www.securitylab.ru/news/301002.php</a>:</p>
<p>Администраторы веб-узлов и просто люди обычно пользуются FTP, чтобы загрузить файлы с компьютера на сайт &#8211; и обратно. Как всегда, компания Microsoft решила облегчить жизнь пользователю: встроила в Windows функции для работы с протоколом передачи данных.</p>
<p>Internet Explorer &#8211; поддерживает FTP исключительно для удобства. Браузер  заботливо включит в сохраненный файл(*.html, *.htm, *.mht) &#8211; имя пользователя и пароль, потому что они являются частью URL (ftp://myusername@mywebsite.com). По соображениям безопасности &#8211; IE сохраняет адреса страниц скачиваемых объектов.</p>
<p>Если скачать с FTP файл: отредактировать его и выложить обратно  то любой, просматривающий эту страницу, сможет получить связку login/password для доступа к ресурсам сайта.</p>
<div class="codecolorer-container html4strict default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&lt; !DOCTYPE HTML PUBLIC <span style="color: #ff0000;">&quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;</span>&gt;</span><br />
<span style="color: #808080; font-style: italic;">&lt;!-- saved from url=(0041)ftp://admin:1234@mat/aaa.html --&gt;</span><br />
<span style="color: #009900;">&lt;<a href="http://december.com/html/4/element/html.html"><span style="color: #000000; font-weight: bold;">html</span></a>&gt;&lt;<a href="http://december.com/html/4/element/head.html"><span style="color: #000000; font-weight: bold;">head</span></a>&gt;</span><br />
<span style="color: #009900;">&lt;<a href="http://december.com/html/4/element/meta.html"><span style="color: #000000; font-weight: bold;">meta</span></a> <span style="color: #000066;">http-equiv</span><span style="color: #66cc66;">=</span>Content-<span style="color: #000066;">Type</span> <span style="color: #000066;">content</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text/html; charset=windows-1251&quot;</span>&gt;</span><br />
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><a href="http://december.com/html/4/element/meta.html"><span style="color: #000000; font-weight: bold;">meta</span></a>&gt;&lt;<a href="http://december.com/html/4/element/meta.html"><span style="color: #000000; font-weight: bold;">meta</span></a> <span style="color: #000066;">content</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;MSHTML 6.00.2900.3132&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span>GENERATOR&gt;&lt;<span style="color: #66cc66;">/</span><a href="http://december.com/html/4/element/meta.html"><span style="color: #000000; font-weight: bold;">meta</span></a>&gt;&lt;<span style="color: #66cc66;">/</span><a href="http://december.com/html/4/element/head.html"><span style="color: #000000; font-weight: bold;">head</span></a>&gt;</span><br />
<span style="color: #009900;">&lt;<a href="http://december.com/html/4/element/body.html"><span style="color: #000000; font-weight: bold;">body</span></a>&gt;&lt;<a href="http://december.com/html/4/element/pre.html"><span style="color: #000000; font-weight: bold;">pre</span></a>&gt;</span><span style="color: #ddbb00;">&amp;lt;</span>h1<span style="color: #ddbb00;">&amp;gt;</span>aaaa<span style="color: #ddbb00;">&amp;lt;</span>/h1<span style="color: #ddbb00;">&amp;gt;</span><span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><a href="http://december.com/html/4/element/pre.html"><span style="color: #000000; font-weight: bold;">pre</span></a>&gt;&lt;<span style="color: #66cc66;">/</span><a href="http://december.com/html/4/element/body.html"><span style="color: #000000; font-weight: bold;">body</span></a>&gt;&lt;<span style="color: #66cc66;">/</span><a href="http://december.com/html/4/element/html.html"><span style="color: #000000; font-weight: bold;">html</span></a>&gt;</span></div></div>
<p>Интересно, почему раньше этого не замечали?</p>
]]></content:encoded>
			<wfw:commentRss>http://dmitry.shaposhnik.name/2007/08/10/ie-is-dumb-security-hole/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>IE is DUMB &#8211; rss headers</title>
		<link>http://dmitry.shaposhnik.name/2007/07/30/ie-is-dumb-rss-headers/</link>
		<comments>http://dmitry.shaposhnik.name/2007/07/30/ie-is-dumb-rss-headers/#comments</comments>
		<pubDate>Mon, 30 Jul 2007 19:22:09 +0000</pubDate>
		<dc:creator>dm</dc:creator>
				<category><![CDATA[Browsers]]></category>

		<guid isPermaLink="false">http://0804team.kiev.ua/dm/blog/2007/07/30/ie-is-dumb-rss-headers/</guid>
		<description><![CDATA[IE &#8211; тупой, IE &#8211; ТУПОЙ!!!
Вот же ж каким местом думали, спрашивается&#8230; Непонятно.
Итак, трабл:
$feed = Zend_Feed::importArray&#40;$feed_data, 'rss'&#41;;
$feed-&#62;send&#40;&#41;;
работает везде, кроме&#8230; Вы догадались? Да! Кроме как в ИЕ! И 6й, и 7й. Они предлагают сохранить файл. А все потому что шлется заголовок application/rss+xml.
И только из-за этого калеки пришлось прыгать так:
$feed = Zend_Feed::importArray&#40;$feed_data, 'rss'&#41;;
header&#40;'Content-type: text/xml; charset: UTF-8'&#41;;
echo $feed-&#62;saveXML&#40;&#41;;
Трабл [...]]]></description>
			<content:encoded><![CDATA[<p>IE &#8211; тупой, IE &#8211; ТУПОЙ!!!</p>
<p>Вот же ж каким местом думали, спрашивается&#8230; Непонятно.<br />
Итак, трабл:</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000088;">$feed</span> <span style="color: #339933;">=</span> Zend_Feed<span style="color: #339933;">::</span><span style="color: #004000;">importArray</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$feed_data</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'rss'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #000088;">$feed</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">send</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>
<p>работает везде, кроме&#8230; Вы догадались? Да! Кроме как в ИЕ! И 6й, и 7й. Они предлагают сохранить файл. А все потому что шлется заголовок application/rss+xml.</p>
<p>И только из-за этого калеки пришлось прыгать так:</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000088;">$feed</span> <span style="color: #339933;">=</span> Zend_Feed<span style="color: #339933;">::</span><span style="color: #004000;">importArray</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$feed_data</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'rss'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.php.net/header"><span style="color: #990000;">header</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Content-type: text/xml; charset: UTF-8'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #b1b100;">echo</span> <span style="color: #000088;">$feed</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">saveXML</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>
<p>Трабл как с RSS так и с Atom.</p>
<p>А вот теперь еще одна фича. ФФ показывает иконку RSS а вдрес-баре. Safari &#8211; тоже. И даже опера! Но! ИЕ 6й такого не умел, черт с ним, а вот седьмой&#8230; Вы опять догадались? ДА! И Вы совершенно правы! Он НЕ ПОКАЗЫВАЕТ ни одного rss на странице где их аж 5 штук! Да, и они прописаны в заголовке.</p>
<p>Вот такая это гадость.</p>
]]></content:encoded>
			<wfw:commentRss>http://dmitry.shaposhnik.name/2007/07/30/ie-is-dumb-rss-headers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>nice IE</title>
		<link>http://dmitry.shaposhnik.name/2007/01/12/nice-ie/</link>
		<comments>http://dmitry.shaposhnik.name/2007/01/12/nice-ie/#comments</comments>
		<pubDate>Fri, 12 Jan 2007 16:30:37 +0000</pubDate>
		<dc:creator>dm</dc:creator>
				<category><![CDATA[Browsers]]></category>
		<category><![CDATA[Newbie]]></category>

		<guid isPermaLink="false">http://0804team.kiev.ua/dm/blog/2007/01/12/nice-ie/</guid>
		<description><![CDATA[Ну скажите, как можно нелюбить этот браузер?..
Internet Explorer 5 and up display &#8220;&#8216;friendly&#8217; error messages&#8221; and not the carefully crafted and actually helpful 404&#8217;s available on many sites. To avoid this simply make sure your 404 files size is over 512 bytes, not including images (the actual pages code itself) and even IE users will [...]]]></description>
			<content:encoded><![CDATA[<p>Ну скажите, как можно нелюбить этот браузер?..</p>
<blockquote><p>Internet Explorer 5 and up display &#8220;&#8216;friendly&#8217; error messages&#8221; and not the carefully crafted and actually helpful 404&#8217;s available on many sites. To avoid this simply make sure your 404 files size is over 512 bytes, not including images (the actual pages code itself) and even IE users will have the benefit of your new page.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://dmitry.shaposhnik.name/2007/01/12/nice-ie/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
	</channel>
</rss>
