settings: document the possibility of using Unix sockets

We have been supporting Unix sockets by ages, because express.listen()
(http://expressjs.com/en/4x/api.html#app.listen_path_callback) re-exposes
net.server.listen() (https://nodejs.org/api/net.html#net_server_listen), which
in turn supports Unix sockets.

The only remaining thing to do was documenting it.

Fixes #3312
This commit is contained in:
John McLear 2020-03-29 22:27:22 +00:00 committed by muxator
parent 85217b55e0
commit fa3e4b146a
4 changed files with 28 additions and 3 deletions

View file

@ -18,7 +18,13 @@ exports.createServer = function () {
exports.restartServer();
console.log(`You can access your Etherpad instance at http://${settings.ip}:${settings.port}/`);
if (settings.ip === "") {
// using Unix socket for connectivity
console.log(`You can access your Etherpad instance using the Unix socket at ${settings.port}`);
} else {
console.log(`You can access your Etherpad instance at http://${settings.ip}:${settings.port}/`);
}
if (!_.isEmpty(settings.users)) {
console.log(`The plugin admin page is at http://${settings.ip}:${settings.port}/admin/plugins`);
} else {

View file

@ -710,6 +710,11 @@ exports.reloadSettings = function reloadSettings() {
exports.dbSettings.filename = absolutePaths.makeAbsolute(exports.dbSettings.filename);
console.warn(dirtyWarning + ` File location: ${exports.dbSettings.filename}`);
}
if (exports.ip === "") {
// using Unix socket for connectivity
console.warn(`The settings file contains an empty string ("") for the "ip" parameter. The "port" parameter will be interpreted as the path to a Unix socket to bind at.`);
}
};
// initially load settings