Using URL Routing and IIS 7 URL Rewrite with Nopcommerce 1.7?

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
13 years ago
I converted a client's ancient online store last year to ASP.NET 3.5 and used new IIS7 Url Rewrite features extensively to redirect the old pages to the new even though the site was (and is) basically hard-coded.  Last week I converted it to ASP.NET 4.0 in anticipation of installing Nopcommerce 1.7.  Meanwhile the client is very happy with the the URLs as they exist and wants to keep them as they are because they appear in print too.

But  he wants some of the bells and whistles that Nopcommerce offers too. Alas, Nopcommerce's URL rewrite scheme doesn't fit his (or my) expectations.  Is it possible to ditch it and do my own implementation on all or part of the content?

There are only a handful of products on the site and but lots of "topic" pages.  Is it possible to use the raw URLs for the topics and rewrite them individually in the web.config to maintain SEO? Will it mess anything up to NOT use Nopcommerce to URL rewrite a topic but rather use IIS7 and put it in the web.config? For example if the Nop topic is

http://foo.com/topic/19-faq.aspx  

convert it so it displays as

http://foo.com/faq/

Can this be done for the three categories on the site too? It would be great to also do it for six products since there's so few of them.


Last, can the current rules for lowercase file names, slashes, default.aspx removal be kept in the web.config? These greatly help with SEO and ever since implementation the Google Analytics have not only shown an increase in traffic, but yielded more coherent reports.

<system.webServer>
    <rewrite>
      <rules>
        <rule name="lower">
          <match url="[A-Z]" ignoreCase="false"/>
          <action type="Redirect" url="{ToLower:{URL}}" redirectType="Permanent"/>
        </rule>
        
        <rule name="default">
          <match url="(.*)default.aspx" ignoreCase="false"/>
          <action type="Redirect" url="{R:1}" redirectType="Permanent"/>
        </rule>
        <rule name="slash">
          <match url="[^/]$" ignoreCase="false"/>
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
            <add input="{URL}" pattern="\.axd$" negate="true" ignoreCase="false"/>
          </conditions>
          <action type="Redirect" url="{URL}/" redirectType="Permanent" appendQueryString="false"/>
        </rule>
      </rules>
    </rewrite>
  </system.webServer>


At present I have full-source Nopcommerce is installed locally but it's connected to the live server's SQL 2008 db.  Works great but need to be sure that I can configure everything before uploading the new site over the old.
Thanks in advance for any help on this.  

Renzo
13 years ago
renzoz wrote:
Last, can the current rules for lowercase file names, slashes, default.aspx removal be kept in the web.config?

Yes you can keep existing rules. IIS rewrite rules are kept in web.config file.
As long as there's no conflict or syntax error, url rewrite should work fine.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.