<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.2.3" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: Bi-Directional HTTP Transformation</title>
	<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/</link>
	<description>Gotham Digital Science Security Blog</description>
	<pubDate>Thu, 20 Nov 2008 00:04:32 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.3</generator>

	<item>
		<title>By: hitec</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-156</link>
		<dc:creator>hitec</dc:creator>
		<pubDate>Thu, 24 Jul 2008 14:49:36 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-156</guid>
		<description>Hi Brian

I'm using IIS 6.0 with w2003 R2 SP2

I would of liked to try this module.

Thanks anyway</description>
		<content:encoded><![CDATA[<p>Hi Brian</p>
<p>I&#8217;m using IIS 6.0 with w2003 R2 SP2</p>
<p>I would of liked to try this module.</p>
<p>Thanks anyway</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Holyfield</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-155</link>
		<dc:creator>Brian Holyfield</dc:creator>
		<pubDate>Thu, 24 Jul 2008 03:24:10 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-155</guid>
		<description>hitec: This module should do the trick.  SSL has no impact on the module since it runs within IIS.  The only caveat would depend on whether you are running on IIS6 or IIS7.  If you are running IIS7, two rules should fix all of your URLs without any change to the underlying site.  

Based on your post, I would guess they should look something like the following:

&#60;add ruleid=&#34;in-1&#34; direction=&#34;in&#34; from=&#34;^/(.*)\.htm$&#34; to=&#34;/dir1/file.dll/$1&#34; /&#62;
&#60;add ruleid=&#34;out-1&#34; direction=&#34;out&#34; from=&#34;^/dir1/file\.dll/(.*)&#34; to=&#34;/$1.htm&#34; /&#62;

This, of course, is just a guess based on the limited amount of information you provided.  You'll notice above that I added the ".htm" file extension to the re-written URLs.  This is because without the "dir1/file.dll" portion of the URL, there is nothing left to uniquely identify the requests that need to be routed to the DLL vs any other request (like one for a .gif image).  Assuming there are no .htm files on your server, this rule will properly route all .htm requests to the DLL.  

If you are running on IIS6, you might be out of luck with the outbound URL re-writing.  HttpModules on IIS6 only seem to have access to the response stream for managed handlers (aka .NET) and not other handlers.   In either case, I hope this helps.</description>
		<content:encoded><![CDATA[<p>hitec: This module should do the trick.  SSL has no impact on the module since it runs within IIS.  The only caveat would depend on whether you are running on IIS6 or IIS7.  If you are running IIS7, two rules should fix all of your URLs without any change to the underlying site.  </p>
<p>Based on your post, I would guess they should look something like the following:</p>
<p>&lt;add ruleid=&quot;in-1&quot; direction=&quot;in&quot; from=&quot;^/(.*)\.htm$&quot; to=&quot;/dir1/file.dll/$1&quot; /&gt;<br />
&lt;add ruleid=&quot;out-1&quot; direction=&quot;out&quot; from=&quot;^/dir1/file\.dll/(.*)&quot; to=&quot;/$1.htm&quot; /&gt;</p>
<p>This, of course, is just a guess based on the limited amount of information you provided.  You&#8217;ll notice above that I added the &#8220;.htm&#8221; file extension to the re-written URLs.  This is because without the &#8220;dir1/file.dll&#8221; portion of the URL, there is nothing left to uniquely identify the requests that need to be routed to the DLL vs any other request (like one for a .gif image).  Assuming there are no .htm files on your server, this rule will properly route all .htm requests to the DLL.  </p>
<p>If you are running on IIS6, you might be out of luck with the outbound URL re-writing.  HttpModules on IIS6 only seem to have access to the response stream for managed handlers (aka .NET) and not other handlers.   In either case, I hope this helps.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hitec</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-154</link>
		<dc:creator>hitec</dc:creator>
		<pubDate>Thu, 24 Jul 2008 00:19:58 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-154</guid>
		<description>This looks like what I'm looking for...

I have a situation where a sw application company sold us a web based app that has a home page URL of http://www.company.com/dir1/file.dll/home. (sheesh...)

They won't modify the configuration because they consider it "customization" and will charge extra do it.

I need to be able to rewrite browser requests and responses to "hide"
the /dir1/file.dll/ part of the URL, so the new home page would be http://www.company.com/home and all browser responses would not contain the /dir1/file.dll/ part of the URL.

I already do this for external(internet) browser users with a reverse proxy server but the proxy is bypassed for internal (intranet) users.

1. Will this work for this application?
2. Will it work wil SSL?
3. Do you have a rule to share that I could use for testing?

Thanks</description>
		<content:encoded><![CDATA[<p>This looks like what I&#8217;m looking for&#8230;</p>
<p>I have a situation where a sw application company sold us a web based app that has a home page URL of <a href="http://www.company.com/dir1/file.dll/home." rel="nofollow">http://www.company.com/dir1/file.dll/home.</a> (sheesh&#8230;)</p>
<p>They won&#8217;t modify the configuration because they consider it &#8220;customization&#8221; and will charge extra do it.</p>
<p>I need to be able to rewrite browser requests and responses to &#8220;hide&#8221;<br />
the /dir1/file.dll/ part of the URL, so the new home page would be <a href="http://www.company.com/home" rel="nofollow">http://www.company.com/home</a> and all browser responses would not contain the /dir1/file.dll/ part of the URL.</p>
<p>I already do this for external(internet) browser users with a reverse proxy server but the proxy is bypassed for internal (intranet) users.</p>
<p>1. Will this work for this application?<br />
2. Will it work wil SSL?<br />
3. Do you have a rule to share that I could use for testing?</p>
<p>Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Holyfield</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-129</link>
		<dc:creator>Brian Holyfield</dc:creator>
		<pubDate>Tue, 24 Jun 2008 20:54:13 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-129</guid>
		<description>Marc: The limitation relates to HttpModules on IIS6, not IIS6 in general. ISAPIs have long had the ability to modify all parts of a request and response on IIS6.  I would guess that the component you are referring to is an ISAPI and not an HttpModule.</description>
		<content:encoded><![CDATA[<p>Marc: The limitation relates to HttpModules on IIS6, not IIS6 in general. ISAPIs have long had the ability to modify all parts of a request and response on IIS6.  I would guess that the component you are referring to is an ISAPI and not an HttpModule.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marc</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-116</link>
		<dc:creator>Marc</dc:creator>
		<pubDate>Fri, 20 Jun 2008 18:06:32 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-116</guid>
		<description>You write that it is a limitation to IIS6 that outbound ASP content cannot be rewritten. While looking for a good SEO solution we have found and successfully tested LinkFreeze. This tool IS able to rewrite the whole outbound ASP stuff - unfortunately it is very limited in it's capabilites. No way to achieve this for you tool?</description>
		<content:encoded><![CDATA[<p>You write that it is a limitation to IIS6 that outbound ASP content cannot be rewritten. While looking for a good SEO solution we have found and successfully tested LinkFreeze. This tool IS able to rewrite the whole outbound ASP stuff - unfortunately it is very limited in it&#8217;s capabilites. No way to achieve this for you tool?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Holyfield</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-57</link>
		<dc:creator>Brian Holyfield</dc:creator>
		<pubDate>Wed, 14 May 2008 05:04:06 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-57</guid>
		<description>Duane: Unfortunately the code has not been open sourced since a good portion of it is currently being used for another yet-to-be-released GDS project.  However, feel free to contact me directly via our tools e-mail alias (tools [at] gdssecurity.com) and perhaps we can come up with some ideas on how to make it work well for your specific scenario.</description>
		<content:encoded><![CDATA[<p>Duane: Unfortunately the code has not been open sourced since a good portion of it is currently being used for another yet-to-be-released GDS project.  However, feel free to contact me directly via our tools e-mail alias (tools [at] gdssecurity.com) and perhaps we can come up with some ideas on how to make it work well for your specific scenario.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Duane</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-56</link>
		<dc:creator>Duane</dc:creator>
		<pubDate>Tue, 13 May 2008 15:24:59 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-56</guid>
		<description>Wow. This looks like exactly what I have been getting ready to build from scratch for a new client who has hired us for SEO but doesnt want to leave their current CMS. My only question is if there is an open source version available or a provider model of some sort for the  rules and maps. I would prefer to use a db provider for these. In this project we would need to create thousands of map entries. I would be concerned about performance w/ that many rules in a file, as well they regularly add/change/delete categories, which would then require constant maintenance. Anyways, I read through your docs and it seems like Transformer.NET fits my needs to a tee except for this. 
Thanks a lot, Duane</description>
		<content:encoded><![CDATA[<p>Wow. This looks like exactly what I have been getting ready to build from scratch for a new client who has hired us for SEO but doesnt want to leave their current CMS. My only question is if there is an open source version available or a provider model of some sort for the  rules and maps. I would prefer to use a db provider for these. In this project we would need to create thousands of map entries. I would be concerned about performance w/ that many rules in a file, as well they regularly add/change/delete categories, which would then require constant maintenance. Anyways, I read through your docs and it seems like Transformer.NET fits my needs to a tee except for this.<br />
Thanks a lot, Duane</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tom</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-19</link>
		<dc:creator>Tom</dc:creator>
		<pubDate>Fri, 29 Feb 2008 20:07:05 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-19</guid>
		<description>Hello, thank you for your reply.

I will try it...but some examples and information etc. particularly for the DNN stuff would be very helpful.

I'll email back after I have tried it out a little.

Thank you, Tom</description>
		<content:encoded><![CDATA[<p>Hello, thank you for your reply.</p>
<p>I will try it&#8230;but some examples and information etc. particularly for the DNN stuff would be very helpful.</p>
<p>I&#8217;ll email back after I have tried it out a little.</p>
<p>Thank you, Tom</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Holyfield</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-18</link>
		<dc:creator>Brian Holyfield</dc:creator>
		<pubDate>Fri, 29 Feb 2008 18:35:24 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-18</guid>
		<description>Hi Tom --

For an ASP.NET application like DotNetNuke (DNN), Transformer.NET will work seamlessly on both IIS6 &#038; IIS7.  The only prerequisite would be that you will need to make a couple of entries into your web.config file (I presume you should have the ability to do this in the shared environment).  

Here are a couple quick shortcuts to get it working (full documentation / user guide is included in the Zip download):


1 - Add the following entry under the &lt;code&gt;&#60;configSections&#62;&lt;/code&gt; area of your web.config:

&lt;code&gt;&#60;section name=&#34;transformerConfiguration&#34; type=&#34;Transformer.Net.Config.Options&#34; /&#62; &lt;/code&gt;


2 - Add the following section as a child node of the &lt;code&gt;&#60;configuration&#62;&lt;/code&gt; element of the web.config (you should be able to add this section directly after the closing &lt;code&gt;&#60;/configSections&#62;&lt;/code&gt; tag):

&lt;code&gt;&#60;transformerConfiguration logToBrowser=&#34;true&#34; logLevel=&#34;Low&#34;&#62;

&#60;/transformerConfiguration&#62;&lt;/code&gt;

NOTE: You will need to add some Rewrite Rules within this section after you get it working based on your specific re-writing objectives


3 - Add the following entry under the &lt;code&gt;&#60;httpModules&#62;&lt;/code&gt; area of the web.config (under &#60;system.web&#62; for IIS6).  Note that to avoid conflicting with other DotNetNuke HttpModules, you should make this the *first* module in the list.

&lt;code&gt;&#60;add name=&#34;Transformer.Net&#34; type=&#34;Transformer.Net.CoreModule, Transformer.Net&#34;/&#62;&lt;/code&gt;


4 - Test the installation by making a request to one of the DNN pages. You should see some Transformer.NET log entries appended to the bottom of the page.


5 - Generate Rewrite Rules.  There are a number of re-write rules you can create depending on your intention here.  These rules are defined within the &lt;code&gt;&#60;transformerConfiguration&#62;&lt;/code&gt; web.config section we created in step 2.  I would suggest consulting the User Guide (included in the Zip download) for specifics on how to do this since it will really vary depending on your objective.  If you are familiar with the general syntax used by mod_rewrite, then you should be in good shape.


Hopefully this helps out.  Once the rules are working as intended, you should disable all logging by setting logToBrowser="false" logLevel="Off" within the root "transformerConfiguration" element.  If you let me know your specific objectives (i.e. what you are hoping to accomplish with the re-write rules) I would be happy to help you come up with some specific rules if you are having problems.   Feel free to post back here or send an e-mail to our tools e-mail alias.</description>
		<content:encoded><![CDATA[<p>Hi Tom &#8211;</p>
<p>For an ASP.NET application like DotNetNuke (DNN), Transformer.NET will work seamlessly on both IIS6 &#038; IIS7.  The only prerequisite would be that you will need to make a couple of entries into your web.config file (I presume you should have the ability to do this in the shared environment).  </p>
<p>Here are a couple quick shortcuts to get it working (full documentation / user guide is included in the Zip download):</p>
<p>1 - Add the following entry under the <code>&lt;configSections&gt;</code> area of your web.config:</p>
<p><code>&lt;section name=&quot;transformerConfiguration&quot; type=&quot;Transformer.Net.Config.Options&quot; /&gt; </code></p>
<p>2 - Add the following section as a child node of the <code>&lt;configuration&gt;</code> element of the web.config (you should be able to add this section directly after the closing <code>&lt;/configSections&gt;</code> tag):</p>
<p><code>&lt;transformerConfiguration logToBrowser=&quot;true&quot; logLevel=&quot;Low&quot;&gt;</p>
<p>&lt;/transformerConfiguration&gt;</code></p>
<p>NOTE: You will need to add some Rewrite Rules within this section after you get it working based on your specific re-writing objectives</p>
<p>3 - Add the following entry under the <code>&lt;httpModules&gt;</code> area of the web.config (under &lt;system.web&gt; for IIS6).  Note that to avoid conflicting with other DotNetNuke HttpModules, you should make this the *first* module in the list.</p>
<p><code>&lt;add name=&quot;Transformer.Net&quot; type=&quot;Transformer.Net.CoreModule, Transformer.Net&quot;/&gt;</code></p>
<p>4 - Test the installation by making a request to one of the DNN pages. You should see some Transformer.NET log entries appended to the bottom of the page.</p>
<p>5 - Generate Rewrite Rules.  There are a number of re-write rules you can create depending on your intention here.  These rules are defined within the <code>&lt;transformerConfiguration&gt;</code> web.config section we created in step 2.  I would suggest consulting the User Guide (included in the Zip download) for specifics on how to do this since it will really vary depending on your objective.  If you are familiar with the general syntax used by mod_rewrite, then you should be in good shape.</p>
<p>Hopefully this helps out.  Once the rules are working as intended, you should disable all logging by setting logToBrowser=&#8221;false&#8221; logLevel=&#8221;Off&#8221; within the root &#8220;transformerConfiguration&#8221; element.  If you let me know your specific objectives (i.e. what you are hoping to accomplish with the re-write rules) I would be happy to help you come up with some specific rules if you are having problems.   Feel free to post back here or send an e-mail to our tools e-mail alias.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tom</title>
		<link>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-17</link>
		<dc:creator>Tom</dc:creator>
		<pubDate>Fri, 29 Feb 2008 14:21:19 +0000</pubDate>
		<guid>http://www.gdssecurity.com/l/b/2008/02/27/bi-directional-http-transformation/#comment-17</guid>
		<description>Is this for IIS6 or IIS7??

What are the installation pre-requisites?

If this is for IIS6, and if it can be used on shared ASP.NET hosting, would you please provide specific, detailed nformation about how to use this to create DotNetNuke friendly URLs??

Many people would find this very useful, since DNN's built-in friendly URLs has a lot of issues with spaces and special characters.

There are a couple other ones out there for DNN, but they require being able to change IIS configs on the webserver, which most people with shared hosting can't do.

Thank you, Tom</description>
		<content:encoded><![CDATA[<p>Is this for IIS6 or IIS7??</p>
<p>What are the installation pre-requisites?</p>
<p>If this is for IIS6, and if it can be used on shared ASP.NET hosting, would you please provide specific, detailed nformation about how to use this to create DotNetNuke friendly URLs??</p>
<p>Many people would find this very useful, since DNN&#8217;s built-in friendly URLs has a lot of issues with spaces and special characters.</p>
<p>There are a couple other ones out there for DNN, but they require being able to change IIS configs on the webserver, which most people with shared hosting can&#8217;t do.</p>
<p>Thank you, Tom</p>
]]></content:encoded>
	</item>
</channel>
</rss>
