Has anyone deployed the CRM 2011 PRM portal and had it working over https?
The ServiceContext.GetUrl(page) method seems to return the correct URL, but with port 80 post-fixed:
i.e. https://example.com:80/cases/editCase?CaseID=52560671-2fdb-e011-9599-00505682001c开发者_开发知识库
Trying to figure out a way to track down if this is due to IIS configuration or the ServiceContext library that is doing this.
Can you double-check that the port 80 is in fact a result of calling GetUrl or is it the result of being passed through a UrlBuilder object. If the UrlBuilder is at fault you can call the PathWithQueryString property to omit the host and port values.
var url = new UrlBuilder(ServiceContext.GetUrl(page));
url.QueryString.Set("CaseID", id.ToString());
var path = url.PathWithQueryString;
If you need to keep the port value, it can be updated manually.
url.Port = Request.Url.Port;
This should not be an issue with your IIS configuration.
精彩评论