.htaccess or .htpasswd equivalent on IIS? - iis

Does anyone know if there is an equivalent to .htaccess and .htpassword for IIS ? I am being asked to migrate an app to IIS that uses .htaccess to control access to sets of files in various URLs based on the contents of .htaccess files.
I did a google search and didn't turn up anything conclusive. Is there a general approach or tool that I need to purchase that provides this capability ?

For .htaccess rewrite:
http://learn.iis.net/page.aspx/557/translate-htaccess-content-to-iis-webconfig/
Or try aping .htaccess:
http://www.helicontech.com/ape/

There isn't a direct 1:1 equivalent.
You can password protect a folder or file using file system permissions. If you are using ASP.Net you can also use some of its built in functions to protect various urls.
If you are trying to port .htaccess files used for url rewriting, check out ISAPI Rewrite: http://www.isapirewrite.com/

I've never used it but Trilead, a free ISAPI filter which enables .htaccess based control, looks like what you want.

This is the documentation that you want:
http://msdn.microsoft.com/en-us/library/aa292114(VS.71).aspx
I guess the answer is, yes, there is an equivalent that will accomplish the same thing, integrated with Windows security.

Related

Is It Possible To Perform A SQL Database Query As Part Of A WebConfig URL Rewrite Rule?

I'm currently in the process of migrating a PHP website from LAMP Hosting to Microsoft Azure Web Apps Hosting.
The site being migrated uses HTAccess for URL Rewriting purposes; however from what I can tell, Azure does not support the use of HTAccess files (please correct me if I am wrong in this) - instead, it appears that I must use IIS WebConfig for this purposes (a technology that I am not overly familiar with).
Assuming that I have to rewrite the file from HTAccess to WebConfig, the HTAccess file to be rewritten uses Mod_Rewrite and external Rewrite Maps as part of the URL rewriting process. The HTAccess Rewrite Map performs a Database Query as part of this process whereby a URL such as www.example.com/category/music is inputted and then re-written to www.example.com/category.php?catID=1, i.e. the ID associated with each category name is identified via a Database query.
I've familiarised myself with the basics of Web Config and IIS Rewrite Maps thus far; however I have only encountered tutorials outlining static rewrite rules.
Is it possible to perform database queries using IIS Config - similar to the HT Access scenario outlined above?
If so, can someone please point me in the direction of some tutorials dealing with the topic or provide some sample code.
Any help is much appreciated.
Found a tutorial that deals this topic here.
Not sure if that article answers your question but the right way would be using IIS manager on a windows machine to convert from mod rewite rules to urlrewrite config as detailed in https://www.iis.net/learn/extensions/url-rewrite-module/importing-apache-modrewrite-rules

iis htaccess equivalent for re-writing urls

I would like to re-write a URL similar to domain.com/products.aspx?product=20 into something like domain.com/products/20.
Or rather, I'd like to re-write the latter, into the former.
I know how to do this is Apache using .htaccess but how would I do it in IIS? I think I need to change the web.config file, but what rules would I use?
Any pointers would be greatly appreciated! Thank you!
You can find an IIS rewrite module which should do what you want. You can find it here:
http://www.iis.net/download/urlrewrite
If the link should rot you can find it searching for "IIS url rewrite"

redirection with htaccess

hi i have a website. in this i want to redirect on specific pages.if sobebody type http://xyz.com?a=4&b=5 in the url it should be redirect on http://xyz.com?a=10&b=22.
how can i do this.
I would use your backend script (php, ruby, asp.net) to perform the redirect. However possible in htaccess, you will be writing too many rules for the redirect cases.
It's possible to use the RewriteMap directive to do what you want: http://httpd.apache.org/docs/current/mod/mod_rewrite.html
However, I have to admit that I found it quite complicated when I tried and ended up giving in and going for a PHP based solution as suggested by #Jared. I found it more flexible and suitable to the use-case I was implementing.

Is it possible to do friendly url (url rewriting) in classic asp?

I know how to create/implement friendly url in asp.net, but is it possible (and if so - how) to do it in classic asp?
if its impossible, how would google respond (SEO) to creating pages whos sole purpose is to redirect (on load) to a different page?
thanks!
Use a URL rewriter like IIRF or IsapiRewrite that ties into IIS and is processed before ASP/ASP.NET/PHP get the request.
If your classic ASP application runs on a IIS7 then I would totally suggest creating a web.config and using ASP.NET url rewriting feature. I use that for my projects and it works perfectly!
If it runs on an older IIS then ISAPIRewrite or IIRF. Nevertheless I would try as hard as possible to upgrade to IIS7 as it will make things so much easier.
You can also do it without a Rewrite Filter using a custom 404 page. In that you can use Server.Transfer or Server.Execute to redirect off to the correct page. Trouble is you loose your QueryString object doing it that way but it sort of works with a little love and cuddling.
If you want to avoid Server.Transfer et al you can also wrap all your templates in objects and included them all and just call a render function on the template you want to render, leads to big code over-head but its easily overcome by modern server brute force power!
In IIS 7 use Microsoft's own free URL Rewrite!
You need an ISAPI module. It's quite a bit more complex than URL rewriting in ASP.NET, so you can try a commercial rewriter like this one.
Or you can try the Ionic's Isapi Rewrite Filter, which is free, at http://www.codeplex.com/IIRF
IsapiRewrite, yes, I agree with that recommendation.
To answer your other question, Google won't care, just 301 redirect them. Make sure you don't have duplicate content, and don't even 302 redirect. If you 301 redirect, the Google should keep your PageRank concentrated on a single page. (This is what the SEO gurus at work tell me.)
ISAPI_Rewrite v3 will satisfy your needs. There a friendly manager and quite an easy syntax (well anyway if you encounter problems, you may address their support forum).

Mod_rewrite for IIS

Is there anything similar to mod_rewrite for IIS 6/7? I want to be able to point several domains (I'm guessing using CNAMEs) to one domain "abc.com", and then do a redirect to "abc.com/start.html" once the browser hits that domain.
The more advanced tool is ISAPI Rewrite (there is free and paid versions)
http://www.isapirewrite.com/
It allows you setting almost all kinds of rules which mod_rewrite can do.
We use the Ionics ISAPI Rewriter. It's configuration is a subset of what is available with Apache's mod_rewrite.
If you're using ASP.NET, URLRewriting.net is good and open source.
Helicon Ape is a product that emulates Apache behavior on IIS7.
For IIS6 ISAPI_Rewrite 3 is the tool that does the job of Apache mod-rewrite
http://www.iis.net/extensions/URLRewrite/ will work for IIS 7 (it doesn't and won't work for IIS 6). It has a Administration UI and was designed for IIS 7.

Resources