Browse Source

Domain mapping now uses registered name instead of transaction signature.

There's no real need to maintain support for signature mapping anymore. Using this new method means that the latest version of a site is always served via the traditional domain name, whereas using transaction signatures caused older versions to be shown.

Example settings.json configuration:

"domainMapServiceEnabled": true,
"domainMapServicePort": 80,
"domainMap": [
  {
    "domain": "webdemo.qortal.uk",
    "name": "QortalDemo"
  },
 {
    "domain": "www.reqorder.org",
    "name": "ReQorder"
  }
]
qdn
CalDescent 3 years ago
parent
commit
0328007345
  1. 2
      src/main/java/org/qortal/api/resource/WebsiteResource.java
  2. 12
      src/main/java/org/qortal/settings/Settings.java

2
src/main/java/org/qortal/api/resource/WebsiteResource.java

@ -215,7 +215,7 @@ public class WebsiteResource {
private HttpServletResponse getDomainMap(String inPath) { private HttpServletResponse getDomainMap(String inPath) {
Map<String, String> domainMap = Settings.getInstance().getSimpleDomainMap(); Map<String, String> domainMap = Settings.getInstance().getSimpleDomainMap();
if (domainMap != null && domainMap.containsKey(request.getServerName())) { if (domainMap != null && domainMap.containsKey(request.getServerName())) {
return this.get(domainMap.get(request.getServerName()), ResourceIdType.SIGNATURE, inPath, null, "", false); return this.get(domainMap.get(request.getServerName()), ResourceIdType.NAME, inPath, null, "", false);
} }
return this.getResponse(404, "Error 404: File Not Found"); return this.getResponse(404, "Error 404: File Not Found");
} }

12
src/main/java/org/qortal/settings/Settings.java

@ -270,7 +270,7 @@ public class Settings {
// Domain mapping // Domain mapping
public static class DomainMap { public static class DomainMap {
private String domain; private String domain;
private String signature; private String name;
private DomainMap() { // makes JAXB happy; will never be invoked private DomainMap() { // makes JAXB happy; will never be invoked
} }
@ -283,12 +283,12 @@ public class Settings {
this.domain = domain; this.domain = domain;
} }
public String getSignature() { public String getName() {
return signature; return name;
} }
public void setSignature(String signature) { public void setName(String name) {
this.signature = signature; this.name = name;
} }
} }
@ -511,7 +511,7 @@ public class Settings {
public Map<String, String> getSimpleDomainMap() { public Map<String, String> getSimpleDomainMap() {
HashMap<String, String> map = new HashMap<>(); HashMap<String, String> map = new HashMap<>();
for (DomainMap dMap : this.domainMap) { for (DomainMap dMap : this.domainMap) {
map.put(dMap.getDomain(), dMap.getSignature()); map.put(dMap.getDomain(), dMap.getName());
} }
return map; return map;
} }

Loading…
Cancel
Save