MonoX support board

Start the conversation, ask questions and share tips and solutions with fellow developers.

Non-registered users can only browse through our support boards. Please register now if you want to post your questions. It takes a second and it is completely free. Alternatively, you can log in without registration using your credentials at major sites such as Google, Microsoft Live, OpenId, Facebook, LinkedIn or Yahoo.

Blog posts in search results do not work  (Mono Support )

11406 put(a) pogledan, 6 odgovor(a) 24.2.2014. 14:54:14Kreirao(la) super
super

super

24.2.2014. 15:03:58
I have blog container on the homepage.

Initially I posted my issue here on the forums a few months back  that when a user click on blog post on the homepage, the user stays on the homepage and I was told here  that this is by design because of url rewriting rule.

I was advised to change  this:
<rewrite url="^(.*)/(.*)/post/(.*)/(.*)/(.*)/(\?(.+))?$" to="$1/$2.aspx?BlogSlug=$3&BlogPostId=$4&$7" name="BlogPost" defaultPage="/Blog.aspx" urlPattern="/{PageName}/post/{Blog.Slug}/{IdentityId}/{Slug}/" />

To this:
<rewrite url="^(.*)/(.*)/post/(.*)/(.*)/(.*)/(\?(.+))?$" to="$1/$2.aspx?BlogSlug=$3&BlogPostId=$4&$7" name="BlogPost" defaultPage="/Blog.aspx" urlPattern="/Blog/post/{Blog.Slug}/{IdentityId}/{Slug}/" />

But with this url  rewrite rule, when any user use search option and click on any blog post from the search result, it never redirect the user to that post and gives page not found error.

Page not found
 
We couldn't find the page you requested.
 
 
We couldn't find the page you requested.
 
To continue working with the application please click here

Please advise ? any way I can keep the new url rewrite rule so that I can redirect users to blog page and fix the search result problem ?
Ovaj sadržaj još nije ocijenjen. 
6018 Reputacija 709 Ukupno objava
super

super

24.2.2014. 15:06:15
Here is the log

2014-02-24 10:07:28,767 [26] ERROR MonoX [BaseHttpApplication] - Application Error
System.Web.HttpException (0x80004005): The file '/search/gridview/%7e/Blog.aspx' does not exist.
   at System.Web.UI.Util.CheckVirtualFileExists(VirtualPath virtualPath)
   at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
   at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
   at System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound)
   at System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath virtualPath, Type requiredBaseType, HttpContext context, Boolean allowCrossApp)
   at System.Web.UI.PageHandlerFactory.GetHandlerHelper(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath)
   at System.Web.UI.PageHandlerFactory.GetHandler(HttpContext context, String requestType, String virtualPath, String path)
   at System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Ovaj sadržaj još nije ocijenjen. 
6018 Reputacija 709 Ukupno objava
idrazic

idrazic

24.2.2014. 16:54:30
Hi super,

Try setting BlogDisplayUrl to empty, as you can see from the error log it doesn't resolve the url correctly with your combination.
<add key="BlogDisplayUrl" value="" />
Regards,
Igor
Ovaj sadržaj još nije ocijenjen. 
1384 Reputacija 152 Ukupno objava
super

super

24.2.2014. 17:20:41
Hello Igor,

That fixed  the issue - Thank  you

1) Could you please explain what was causing the issue ?

2) What exactly does this solution does by using empty value for blogdisplay ?
Ovaj sadržaj još nije ocijenjen. 
6018 Reputacija 709 Ukupno objava
idrazic

idrazic

25.2.2014. 16:52:19
1)  Tilde  "&#126;/" at the start of the url wasn't resolved when there is no {PageName} in the urlPattern, if you look at the link "href" it shows url with  &#126;/ so request goes to "{root}/current/directory/&#126;/wrong" instead of "{root}/right"

 2) There's a third option when "BlogDisplayUrl" is empty which resolves "&#126;/" to root.  "BlogDisplayUrl" is passed to rewriter method as the "caller" url. 
Ovaj sadržaj još nije ocijenjen. 
1384 Reputacija 152 Ukupno objava
super

super

25.2.2014. 18:45:15
Thank Igor.

I have posted a similar issue with Groups: http://www.mono-software.com/Mono/Pages/Discussion/dtopic/SpDhclwnf0KYy6LdAVXKrA/Group-page-do-not-open-from-the-search-results/

Please help ?
Ovaj sadržaj još nije ocijenjen. 
6018 Reputacija 709 Ukupno objava