The requested URL was not found on this server. Categories and blogger information are not displayed in apache...

Topics: ASP.NET 2.0
Jun 27, 2011 at 10:53 PM

Hi Guys!

I have a stange problem with my BlogEngine. I have set up a Ubuntu Server with its default mono 2.6.7 and I finally get the BlogEngine working on it. But I have only one problem with it. If I'd like to view posts in a category the Ubuntu's apache prompts me the following error (for example at the default BlogEngine.NET category):

The requested URL /blog/category/BlogEngineNET.aspx was not found on this server.

To check the issue of the BE I've grabbed the source fork(2.0.0.47) again using Mono Tools on my windows build environment I've tested this remotely on OpenSUSE with installed MonoVS but I can't reproduce the problem on it. The BE version just like the mono is the same as on my Ubuntu Server. But in the debug environment this works fine....

Do you have any suggestion what should I change to get the category listing working?

Thank you!

Jul 8, 2011 at 1:16 AM

Hello Everyone!

I tried to get solution for this issue, but only thing I know is there is some kind of missunderstanding during the page request... I have created web application for my blog but still experience this issue. When BE runs on MonoVS server debug environment on OpenSuse everything is working correctly. But in Apache (mod mono) displaying categories and blogger information always result "Page not found error message".

I noticed in my web browser that if I click on the category name like "Example" on a post, the web browser requests the following url:

http://mydomain.com/blog/category/Example.aspx

This location is not available in BE folder structure, but somehow other ASP.Net servers can "translate" this request in the background and get the category info. Should I change something in the mod_mono (Apache)? Do you know what can cause this kind of issue? Can someone explain how can this strange request be translated to get category pages for example on IIS server?

Thank you!

Coordinator
Jul 8, 2011 at 2:37 AM

Most of the time it is case sensitivity. Try to run it with IOMAP.

Aug 6, 2011 at 4:36 AM

Thanks for the reply!

I have no idea how should I use the IOMAP on the new 11.04 ubuntu. It has automatic configuration capability to run the ASP.NET page. I tried to ask the ubuntu forum but still have no advance in this issue. I'm experiencing this issue when I try browsing category and author information on my test blog. I tried with lowercase category name to avoid case sensitive problems but no luck.

Coul you please answer me why does the Blogengine try to request "http://mydomain.com/blog/category/Example.aspx" because there is no category directory in the directory structure inside the blog.

Thank you!

Coordinator
Aug 6, 2011 at 4:28 PM

It is not a physical path, BE uses URL re-write to handle things like this. For example:

else if (urlContainsFileExtension && url.Contains("/CATEGORY/")) {
  RewriteCategory(context, url);
}
The "url" is upper-cased before comparison, so should be no problem here.

Aug 7, 2011 at 7:49 PM

Thank you for the answers rtur!

I had time to review this issue again, so it looks like I've finally passed it. The problem is basically a MOD_MONO autohosting issue. So if someone encounters issues like this. The best way to solve it is to disable the "mod_mono_auto" module in the Ubuntu 11.04 enable the "mod_mono" and setup an Application using the "mono_server2_admin" and "mono_server2_update" tools for the BE blog.

After doing this change the URL rewrite thing is working with both category and author links.

Don't trust fully in the AutoHosting feature :)