For a long time we did not url encode all the characters of friendly urls and for many languages it seems to work ok with non-ascii urls even though the spec says that urls should always be url encoded. As of mojoPortal 2.3.3.0 we changed the behavior to follow the spec and encode non-ascii characters by default in order to fix a bug that was reported when using Persian urls in IE 8.
However for backward compatibility with existing sites using non-ascii urls and to allow you to do it if it seems to work ok for your language, we used a Web.config setting so that url encoding can be disabled.
<add key="AlwaysUrlEncode" value="true" />
The choice should be made before you create any pages and you should not change this setting after you have created pages otherwise urls will not be found and a 404 will result. We did add one extra setting that "may" solve it if you have existing non-encoded urls and do change it to encode urls going forward, you can try adding this config setting and it "may" fix it but your mileage may vary.
<add key="RetryUnencodedOnUrlNotFound" value="true" />
The above setting is false by default to avoid un-needed extra url lookups in the database.
It is also possible to use the closest ascii equivalent for some languages with this setting.
<add key="UseClosestAsciiCharsForUrls" value="true" />
A good discussion of the challenges of using non-ascii characters in urls can be found in this blog post by Keyvan Nayyeri http://nayyeri.net/nonenglish-urls
Due to some of the problems many people choose to use English urls even though it is less than ideal. For languages that use similar alphabets to English, we can also use a strategy to replace the non-ascii characters with their closest ascii equivalents.