Semantic URL's in MOSS 2007 (Imtech SharePoint Semantic URL's free Feature)

, , , , , ,

Semantic URL's are one of the things I always wanted to have in Microsoft Office SharePoint Server 2007. Since the first time I have opened an Internet facing site made in SharePoint 2007 I knew it would be great if the Pages part of the URL could be removed as well as the .aspx extension.

I believe that everyone working on Web Content Management (WCM) solutions would agree, that semantic URL's are very important in today's Web. First of all they are much more user friendly. Visitors are able to memorize certain URL's based on their information. Compare for example http://mycompany.com/Division/Services with http://www.mycompany.com/Division/Pages/Services.aspx. The second one will be obviously much more difficult to remember for someone who doesn't know SharePoint.

Another reason, why semantic URL's are important, is the Search Engine Optimization (SEO). I like to think of it as a set of best practices on how to get the most of your site and let search engines index the content of your web site as high as possible. At the end of the day it's all about finding and being found right? Semantic URL's are being used by the most popular and most important search engines. Depending on how short and how meaningful the URL is, the found result will end up higher in the query results.

Getting back to MOSS 2007…. SharePoint 2007 has been built upon ASP.NET 2.0. Theoretically configuring a URL rewriting engine should get you there, right? Well, not quite. It will take you only half way there. In order to have your URL's being picked up by the URL rewriting engine, they have to match a certain pattern. So you either need an extra level in the URL (for example http://mycompany.com/p/Division/Services where you would pick up everything after /p/ and remap it to the real page) or you would need to define an extension which would tell the redirect engine to remap the request. The second solution is being used for example by the Rapid for SharePoint, which uses the .htmx and .htmc extensions.

In my opinion none of the above is the right solution. In the first case you create an extra level in the hierarchy. Just like sticking the /Pages/ between the hierarchy and the page, putting something else meaningless in the URL will definitely not improve either the user friendliness or the SEO of your site.
The second approach gets you only half way there. While the URL's are more semantic the extension is still there.

The Challenge

URL rewriting in SharePoint 2007 is quite challenging in my opinion. There are few different types of URL's you must consider.

First of all the Publishing Pages – these are the URL's you want to rewrite, because these URL's are being used by search engines and are exposed to the visitors.

Then there are all the resources like CSS, JavaScript, images and so on. You don't need to rewrite these URL's.

Then there are a couple of SharePoint resources which you don't want to rewrite like for example Application Pages (.aspx pages which reside in the _layouts directory), View Forms (.aspx pages used with lists which reside in the /Forms/ folder of a list) and SharePoint Web Services to name a few.

As we want to use extensionless URL's another challenge appears: how to distinguish a Publishing Page from Publishing Site or a list? Probably the only way would be to get the URL and try to open an instance of SPWeb from it. If it succeeds it's a Site otherwise it should be a Publishing Page. Can you imagine the performance penalty of such an approach?

Introducing the Imtech SharePoint Semantic URL's Feature

As I've already mentioned, I've been thinking on solving this challenge for quite some time now. Just recently I have succeeded in creating a working Proof-of-concept.

The main functionality of the Imtech SharePoint Semantic URL's Feature is to allow you to use semantic URL's on your WCM sites. By using it, you can refer to your pages using for example: http://mycompany.com/Division/About instead of http://mycompany.com/Division/Pages/About.aspx.

The Feature doesn't use a redirect, so the pages will get indexed by the search engine.

There is a little performance penalty for benefiting of the semantic URL's in SharePoint. There is no magic to it: I have to do the check as well, but in the Feature I have tried to postpone it as long as possible and run a few different – very lightweight checks, to check whether the URL should be redirected or not.

First of all I check whether the last part of the URL contains a dot. If so, the URL won't be remapped. So for example http://mycompany.com/Division/Images/image.jpg won't be remapped while http://mycompany.com/Diviosn/About will point to http://mycompany.com/Division/Pages/About.aspx. This is actually the only limitation which seemed to me like a fair price to pay for the fact that you can use semantic URL's in SharePoint 2007.

The next thing I do is to check whether the URL refers to one of the SharePoint system paths, like _layouts, Forms, Lists, _vti_bin, etc. These URL's are not rewritten as well.

Finally the last thing is to check whether the URL is a valid Site URL or it points to a Publishing Page and needs to be remapped. This check is the biggest bottle neck of the Feature. Because WCM solutions are all about performance and great User Experience (UX) I have developed some extra functionality to suppress the penalty of the remapping.

Introducing the Imtech SharePoint Semantic URL's Crawler

In order to improve the overall performance of the remapping I have decided to keep track of the rewritten URL's. Each time a URL is processed by the Imtech SharePoint Semantic URL's Feature it is being stored in a dictionary. The second time the URL is called, the Feature knows what to do with the URL and it doesn't have to be processed anymore.

Another thing I have included in the Feature is a crawler for creating the semantic URL's. Basically it enumerates all sites and pages within the current Site Collection and creates semantic URL's for each one of them. These URL's are being stored in the cache so that they can be used by the remapping module. Practically you would want to run the crawler each time you have created a new Site in order to avoid the extra penalty.

Imtech SharePoint Semantic URL's crawler 

And what about all the other URL's which are not being crawled? All these URL's are being stored as well, so eventually, as long as the Application Pool is alive, each URL's will be processed only once and then stored in the URL map to avoid any performance penalties.

The Imtech SharePoint Semantic URL's Feature is fully functional. At this moment however, there are number of things you have to take care of yourself. While the Feature allows you to use semantic URL's to request SharePoint content, you have to take care yourself that you're using such links. This requires not only adjusting any existing links within the content of the web site but slightly modifying the navigation as well. Eventually the Imtech SharePoint Semantic URL's Feature will contains all components required to render semantic URL's in the HTML.

Imtech SharePoint Semantic URL's Feature is free and you can use it without any restrictions. As I'm sharing it with you in the early stage it would be great if you let me know that you're using it and what your experience is.

Download: Imtech SharePoint Semantic URL's v1.0.0.0 (11KB)

Possibly related posts

74 Responses to “Semantic URL's in MOSS 2007 (Imtech SharePoint Semantic URL's free Feature)”

  1. Mark Wilson Says:

    Excellent tool, sorely needed for MOSS WCM. Good work!

  2. Søren Says:

    Fantastic idea to have it crawl the site. Maybe the portal sitemapprovider could speed up the crawl process.
    Any chance off sharing the source code?

  3. Waldek Mastykarz Says:

    Thank you. I've been thinking about it myself to use a SiteMapProvider for crawling purposes. I'm not really sure though if it's an efficient approach to let it have access to every page within a site. I believe that it would have a negative effect on the overall performance of the whole web site if you would let the SiteMapProvider have access to every single page within the whole site.

    As for the source code: haven't considered it yet. Maybe in the future.

  4. sunil Says:

    what is hte best business need for this .

  5. Ed Says:

    I installed and deployed this solution, but its not working. Is there another step I have to go thru?

  6. Waldek Mastykarz Says:

    Could you tell something more on what precisely isn't working? Are you getting any error?

  7. Jason Says:

    Hi,
    I have added, deployed and activated the solution but when i click the link in site settings i get file not found? I am running WSS3.0 SP1, will this only work on moss? Basically my predesessor hard coded some of the document library urls and i have migrated the site to new equipment and i need to change them to point to the correct location not the old one?
    Thanks
    Jason

  8. Waldek Mastykarz Says:

    Hi Jason,

    The Semantic URL's Feature was indeed meant to be used with MOSS. As it scans Publishing Pages only it's of little use for WSS sites.
    If you need URL redirection only, you might have a look at my SharePoint GoCodes Feature (http://blog.mastykarz.nl/2008/06/15/imtech-sharepoint-gocodes-free-sharepoint-feature/) where you can manage the redirections yourself.

  9. Mihail Says:

    Hi,

    Does anybody has problem with activating feature through SharePoint portal. When I try to activate feature I got "Access denied" error. Solution is succesfully deployed. I succeed to activate the feature through STSADM command but when clicking Crawl button it throws null reference exeption. I have installed MOSS 2007.

  10. Dudi Says:

    Hi,

    I installed the feature.
    Now I want to setup the redirection in GoCodes list.
    A question:
    My link is: http://vs2008vp/Pages/default.aspx
    and I would like it to be: http://vs2008vp/Pages/default

    What should I set in GoCodes list for "Go Codes" and "URL" columns?

    Thank you.

  11. Waldek Mastykarz Says:

    You cannot do that using the GoCodes Feature. Using GoCodes you could do following http://vs2008vp/go/default (GoCode: default) which would link to http://vs2008vp/Pages/default.aspx (URL). Please notice that it's a simple redirect instead of a full featured URL rewriting.

  12. Peter Stensson Says:

    Hi,

    I have successfully installed the web part, but I have trouble with pages that contains a postback, for example a button. A 404 page shows because the action attribute in the form tag is the name of the PublishingPage. Have you had similar problems? I guess that I have to manipulate the action attribute in some way.

    Thanks,
    Peter

  13. Waldek Mastykarz Says:

    Hi Peter,
    Thanks for your reaction. There might be indeed certain situations when the semantic URL's Feature that I provided doesn't fully work. Postback is one of such situations. The solution I've provided is more of a study material rather than a turn key solution you might use in your projects.
    To get the postback working you would indeed have to rewrite the postback url using the same logic as for rewriting the pages' URL. I think you could achieve that using either a Control Adapter attached to the Form or a custom Form control.

  14. Dudi Says:

    Hi,

    I installed the feature successfully in MOSS 2007.
    I set "GoCode" as "default" and the "URL" as "http://vs2008vp/Pages/default.aspx".
    I got 404 error on "http://vs2008vp/go/default".

    Thank you.

  15. Waldek Mastykarz Says:

    Have you tried other redirects? Do they work?

  16. Dudi Says:

    Yes, I tried and still get 404 error page.

  17. Waldek Mastykarz Says:

    Could you confirm that the GoCodes HttpHandler is registered properly? You should see it in the Handlers section of your web.config

  18. Dudi Says:

    I see the Handlers in my web.config

  19. Hardik Says:

    Hi Waldek,

    I\'ve deployed as well as activated the feature. But unfortunately, I can not see it in the Site Settings. Could you please tell me where do I look for it? However, I can see Imtech SharePoint Semantic URL\'s Crawler under the Site Collection Administration tab in the Site Settings.. but when I click on it, it throws \"File Not Found\" error… Your help will be appreciated… TIA

  20. Waldek Mastykarz Says:

    It seems like the .wsp hasn't been deployed properly. You could try redeploying it. If it won't help: could you send me the URL of the Crawler page?

  21. Hardik Says:

    I wil try that out. Can you tell me where should I find the solution once it is properly deployed? Unfortunately, I can't send the URL of the crawler page because I'm have MOSS installed on my a virtual machine so it will not be accessible to outside environment.

  22. Waldek Mastykarz Says:

    Hi Hardik,

    You got me a bit wrong ;) I didn't want to use that URL. Just wanted to have a look whether it's being rendered properly.
    After you deployed the solution you should be able to confirm that it's been properly deployed in Central Administration. Let me know if there are any errors.

  23. Richard Says:

    I have the same problem as Hardik, the webcrawler url is like _layouts/Imtech/SemanticUrlsCrawl.aspx but throws "File not found"

  24. Waldek Mastykarz Says:

    The file is inside the WSP and should be deployed to the path you have mentioned. Could you confirm that the WSP has been deployed correctly? Additionally, could you confirm that that page is located in 12\TEMPLATES\LAYOUTS\Imtech?

  25. Richard Says:

    Hey, the file is there, i tried to open it to see the code in SP Designer and i think the problem it\'s the master page, it fails to load \"~/_layouts/application.master\" according to SP Designer, I made sure application.master is under 12\\TEMPLATES\\LAYOUTS\\ and I also tried to copy application.master to Imtech folder and redirect the page to just point at \"application.master\" but i get the same \"Can\'t load Master Page\" in SP Designer.

  26. Waldek Mastykarz Says:

    Hi Richard,

    I've tested the Feature on a standard setup and it worked well. Are you using a particular Site Definition? What's the URL of your Site Collection? Any particular Features you have enabled/disabled?

  27. Richard Says:

    Hey Waldek, the site was configured before I got here so there might be some strange setup, while I'm trying to get the feature to work I've been developing a HttpModule to Rewrite the url but I can't seem to get it to work, while i was at this I noticed in my web.config you also use a HttpModule, any chance I can see part of the code to see where I'm wrong? or some tutorial or pointers about it?.

  28. Richard Says:

    He, it's me again, I got my HttpModule to work and rewrite empty paths to /Pages/Default.aspx BUT every image,css file or resource I use is corrupted, how did you everything to keep working?, my code is similar to this: http://scaredpanda.com/2008/08/url-rewriting-with-sharepoint-moss-2007/ or any idea where can I ask for help with this?

  29. Waldek Mastykarz Says:

    I would give a close look at code snippet where you determine whether to rewrite a URL or not. Somehow URL's other than .aspx are being picked up. Debugging the code should provide you with more information about the differences between the URL's that should and should not be rewritten.

  30. Waldek Mastykarz Says:

    @Richard: you can always use .NET Reflector to peek in my code. I won't mind ;)

  31. Waldek Mastykarz Says:

    @Richard: the master page error you got earlier resembles a lot the error described in this thread: http://social.msdn.microsoft.com/forums/en-US/sharepointdevelopment/thread/717c35a4-09cd-4996-9633-79222fb47843/

  32. Dudi Says:

    Hello,

    I had "File Not Found" problem – the solution:
    1. In "_layouts/Imtech/SemanticUrlsCrawl.aspx" I changed the first line from

    to

    Then I don't have any "File Not Found" error in http://server_name/_layouts/Imtech/SemanticUrlsCrawl.aspx
    3. I click on "Crawl" button (in http://server_name/_layouts/Imtech/SemanticUrlsCrawl.aspx). Then the redirect works fine – from http://server_name/Pages/Test.aspx to http://server_name/Test

  33. Dudi Says:

    I added to the Assembly tag – ", Version=1.0.0.0, Culture=neutral, PublicKeyToken=a2497bb55578171d"

  34. Dudi Says:

    Hello,
    The feature work fine.
    I have a problem with images.
    I have image that is http://server_name/sub_site/PublishingImages/top.jpg
    When I use semantic usl it display as
    http://server_name/PublishingImages/top.jpg (missing sub_site).
    So I can't see the image.
    Thank you.

  35. Dudi Says:

    The problem with images appears sinse in the code there is "../PublishingImages/top.jpg".
    So, what can be done to use semantic usl without doing code changes.

  36. James Says:

    Solution:

    C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS\Imtech\SemanticUrlsCrawl.aspx

    Replace first line of SemanticUrlsCrawl.aspx

    With:

  37. Lacey Says:

    I installed the solution, getting a successful deploy message. Activated the feature, but receive the error "File Not Found" when clicking on the link in Site Settings.

    I tried to delete the solution (to start over) using stsadm -o deletesolution with -override and shows successful. The feature, however, still remains in the Site Collection Features page and allows me to activate and deactivate.

    Any suggestions?

  38. Waldek Mastykarz Says:

    @Lacey: see the comments above. Richard seems to have had the same problem and a possible solution.

  39. Xanadu Says:

    Can't you make a new release?? :p

    Or follow Dudi's solutions:

    I added to the Assembly tag – ", Version=1.0.0.0, Culture=neutral, PublicKeyToken=a2497bb55578171d"

  40. MOSSBUDDY Says:

    HI Waldek,
    Can you share the source code please?

    thank you.
    MB

  41. MOSSBUDDY Says:

    Hey Waldek,
    How to tackle the Search results, i.e. the search results will show the url as http://somethin.com/pages/somepage.aspx instead of http://somethin.com/somepage.
    Do you think the only solution to this would be to modify the search results XSLT or something else. Appreciate your comments.

    thanks
    MB

  42. Waldek Mastykarz Says:

    @MOSSBUDDY: I'd say the easiest way would be to modify the XSLT. The first approach I would choose would be to create a custom XPath function with the same logic for rewriting the URL's as the Feature. That means however that you would have to subclass the Search Results Web Part and I'm not sure it's possible: some of the Search Web Parts are sealed.
    The other approach would be creating a custom XSL template. It would definitely be more challenging than using a custom XPath function but it should be doable imho.

  43. MOSSBUDDY Says:

    Thank you Waldek, as usual you are always there to help and very prompt and quick in your responses. Thanks again.

    Is there anyway I can get the Source code?

  44. Waldek Mastykarz Says:

    @MOSSBUDDY: Is there any particular piece that you're interested in?

  45. MOSSBUDDY Says:

    I would like to take look at the HTTPModule that modifies the urls and strips out the Pages and the .aspx extension. Actually we have a requirement where if the user enters a URL like: http://somethin.com/pages/somepage.aspx he should be redirected to http://somethin.com/somepage and the user should never see or even if s/he types the URL with Pages or .aspx it should be converted back to the url like:
    http://somethin.com/somepage

  46. MOSSBUDDY Says:

    Hi Waldek,
    Can you please let me know how do we make sure that when the user enters a URL like: http://somethin.com/pages/somepage.aspx it gets directed correctly to that page but the URL in the browser appears as: http://somethin.com/somepage. Currently your solution works great for the other way round. Can you please help hw this can be done.

  47. Waldek Mastykarz Says:

    @MOSSBUDDY: as far as I know you would have to perform a redirect. There is no way to simply replace the URL with something else. This is due to security issues like phishing.

  48. MOSSBUDDY Says:

    Hi Waldek,
    Can you please give more details on the redirect? Should this be done thru ISA or some other product or should that be done thru HTTPModule.

    thanks
    MB

  49. Waldek Mastykarz Says:

    @MOSSBUDDY: I'm not really that familiar with ISA, but it's definitely something you might do in a custom HttpModule.

  50. MOSSBUDDY Says:

    So if we go writing another HTTPModule that will first change the URL from http://somethin.com/pages/somepage.aspx TO: http://somethin.com/somepage. And then your HTTPModule will come into picture that will process this URL, correct? Wont this be a performance hit for every ASPX request? I am sure you have better solution than this.

  51. Waldek Mastykarz Says:

    @MOSSBUDDY: anytime you add something to the ASP.NET request/response pipeline it's going to have a performance penalty. You could of course setup both modules to work after the OutputCache module so that the altered pages would be stored in cache. Such scenario would only work with OutputCache enabled though (most of the time anonymous sites only).
    Another approach that ASP.NET offers you is writing your own VirtualPathProvider. It's basically tell ASP.NET how to resolve the URL's (imagine having a complete site in a ZIP file and then mapping the URL's to different resources in there). I haven't worked with VirtualPathProviders myself so I cannot give you much advice about if it can be combined with SharePoint, and how all the plumbing works.

  52. MOSSBUDDY Says:

    Thanks Waldek, appreciate your prompt help. Can i write a HTTPModule by which I can replace the hostname of the url for e.g. if a user browses to http://www.someURL.com/Pages/default.aspx internally it actuall point to: http://myMosswebappURL.com/sites/someURLsite/Pages/default.aspx. We dont want to go the hostheader site-collection way (and there are reasons for not going to it). So by using HTTPModule can I change the hostname as I mentioned above (ofcourse the hostname and dns entries, etc are done properly) but how do I change the hostnames thru HTTPModule?

  53. Waldek Mastykarz Says:

    @MOSSBUDDY: While I'm not sure whether the internal rewrites that ASP.NET allows you to do may be done cross-domain, I wonder why won't you use the SharePoint's Alternate Access Mappings. They allow you to make people think that they are using site at URL A while physically the site is being located at URL B. For what I imagine is that the performance and scalability of AAM would be way better than while doing the same using a custom HTTP Module

  54. MOSSBUDDY Says:

    Thanks again Waldek, but do you think AAM can be used with site-collections? Also there is a limit of 5 AAMs per web-app so if I have 10 site-collections then I can't think of using AAM. Also with AAM how can we manage the site-collection URL and make it appear as if it is a web-app url i.e. http://myMosswebappURL.com/sites/someURLsite/Pages/default.aspx. APPEARS as:
    http://www.someURLsite.com/Pages/default.aspx

  55. Waldek Mastykarz Says:

    @MOSSBUDDY: AFAIK you cannot use AAM for that. May I ask why do you want to do such remapping instead of just making the site in SharePoint a separate Web Application?

  56. MOSSBUDDY Says:

    The reason for making it like this is because the customer has 1000 products like these and they dont want to provision that many web-apps and have created site-collections which they would like to treat as brands (rather than going thru the long urls). Basically each product needs to be treated as its own brand and needs to be accessed like a web-app.

    thank you.

  57. ajd Says:

    Hi Waldek.

    Does this only work with IIS7 if you want rewritten Urls not to contain a .aspx extension?

    e.g.

    Real Url is /a/b/c.aspx
    Public url is /a/b/c

    I refer to Scott Guthries post at

    http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx

    My understanding is that they aspx extenstion must exist for IIS 6 in order for the request to get the the Http Module in the first place.

    Thanks.

  58. Waldek Mastykarz Says:

    @ajd: I based my case on IIS6. I haven't tried the stuff Scott described in his article. In one of my projects I used the UrlRewriting.net module, but for a different reason than having extenion-less URL's.

  59. ajd Says:

    I am a little confused now. Nothing unusual there :-)

    Are you saying your method supports extension-less Urls in IIS6?

    The way I read Scott Gu's atricle was that this was not possible in IIS6 because we need the aspx extension in order to get to the Http Module. However, in IIS7, we can use extension-less Urls because of the different pipeline.

    Thanks again.

  60. Waldek Mastykarz Says:

    @ajd: as I already said: I have created my solution on IIS6 and it worked. And although it wasn't a production-ready solution and still a few things were left undone, I guess we could say that it proves one could use extension less URL's with SharePoint.

  61. Alex Says:

    I installed this feature but I get an error when I deploy it. When I click on "Imtech SharePoint Semantic URL's Crawler" I get this error -> File Not Found. at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)…

  62. Waldek Mastykarz Says:

    @Alex: are you sure that there were no errors during the deployment? Additionally, could you share some more information on your environment like whether your using MOSS or WSS only, which OS/IIS version you're using, etc.

  63. Alex Says:

    @Waldek: There were no errors. I am using MOSS 2007 with II6. Here is a log of my DOS window.

    stsadm -o addsolution -filename "C:\Documents and Settings\SPADMIN\Desktop\Imtech.SemanticUrls.wsp"

    Operation completed successfully.

    stsadm -o deploysolution -name "Imtech.SemanticUrls.wsp" -immediate -allowgacdeployment -url "http://mossSite"

    Timer job successfully created.

  64. Waldek Mastykarz Says:

    @Alex: because you're using the -immediate switch, the solution hasn't been deployed yet. You have to run stsadm -o execadmsvcjobs to actually run the timer job responsible for deploying the solution.

  65. vic Says:

    can i use this fr ste collections…as in…lengthy ones to a small one redirect?

  66. Waldek Mastykarz Says:

    @vic: I think you should look at Imtech SharePoint GoCodes for that

  67. MG Says:

    Running into a simpilar issue to other posts. Deployed wsp successfully, activated feature but receive, \"File Not Found\" error because the SemanticUrlsCrawl.aspx doesn\'t exsist.

  68. Waldek Mastykarz Says:

    @MG: The file is there, it's the link between the SemanticUrlsCrawl.aspx page and the assembly that's broken. If you look at the file you will see < %@ Assembly Name="Imtech.SharePoint.SemanticUrls" %> in the first line. As the assembly is being deployed to the GAC it should be < %@ Assembly Name="Imtech.SharePoint.SemanticUrls, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a2497bb55578171d" %> instead. As soon as you change this it should work correctly.

  69. Amit Says:

    Hi,

    I am getting this error …
    I changed the assembly
    (first line) but after that I m getting this error…

    The file \'/_layouts/Imtech/_controltemplates/InputFormSection.ascx\' does not exist.

  70. Amit Says:

    The top files in my aspx page are these tell me where I m wrong

    <@ Assembly Name="Imtech.SharePoint.SemanticUrls, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a2497bb55578171d">

    <@ Register TagPrefix="wssawc" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c">
    Register TagPrefix="wssuc" TagName="InputFormSection" Src="~/_controltemplates/InputFormSection.ascx">
    <@ Register TagPrefix="wssuc" TagName="InputFormControl" Src="~/_controltemplates/InputFormControl.ascx">
    <@ Register TagPrefix="wssuc" TagName="ButtonSection" Src="~/_controltemplates/ButtonSection.ascx">

  71. Waldek Mastykarz Says:

    @Amit: It seems somehow that the link is being resolved incorrectly. Instead /_controltemplates/… you're getting /_layouts/Imtech/_controltemplates/… What is the URL that you're seeing the browser?

  72. Amit Says:

    Thanks Waldek for the reply.The url when I click on the link is

    _layouts/Imtech/semanticurlscrawl.aspx……this is coming out to be fine but idk why it is taking url fo the .ascx files wrong……do u hv any idea?

  73. Waldek Mastykarz Says:

    @Amit: no, not really. I haven't worked with this solution for a while now, so would have to dive into it again to see what is wrong.

  74. Amit Says:

    Hi,

    I would really appreciate if you could tell me what could be the solution for this problem. As you are my last hope for this url rewriting.

    Thanks,
    Amit

Leave a Reply

Security Code:

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS
Copyright © 2007 - 2010 Waldek Mastykarz

Creative Commons License