Index: xwiki-platform-core/xwiki-core/src/main/java/com/xpn/xwiki/XWiki.java =================================================================== --- xwiki-platform-core/xwiki-core/src/main/java/com/xpn/xwiki/XWiki.java (revision 5380) +++ xwiki-platform-core/xwiki-core/src/main/java/com/xpn/xwiki/XWiki.java (working copy) @@ -3758,8 +3758,23 @@ BaseObject serverobject = doc.getObject("XWiki.XWikiServerClass"); if (serverobject != null) { String server = serverobject.getStringValue("server"); - int mode = serverobject.getIntValue("secure"); - serverurl = ((mode == 1) ? "https://" : "http://") + server + "/"; + if (server != null) { + int mode = serverobject.getIntValue("secure"); + int port = context.getURL().getPort(); + if (mode == 1) { + if (port != 443) { + serverurl = "https://" + server + ":" + port + "/"; + } else { + serverurl = "https://" + server + "/"; + } + } else { + if (port != 80) { + serverurl = "http://" + server + ":" + port + "/"; + } else { + serverurl = "http://" + server + "/"; + } + } + } } } catch (Exception ex) { } finally {