Compare commits

...

4 Commits

Author SHA1 Message Date
lamp da1b0ab58c no 405 2023-03-03 02:39:46 -06:00
lamp ff8b626b8a rename env var 2022-01-18 15:38:30 -06:00
lamp e7b770b177 tweak 2022-01-18 15:29:15 -06:00
lamp 5d203d2ca7 tweak 2022-01-18 15:24:22 -06:00
2 changed files with 4 additions and 10 deletions
+2 -2
View File
@@ -17,12 +17,12 @@ The following environment variables are optional.
| Variable | Description | Default | | Variable | Description | Default |
|----------|-------------|---------| |----------|-------------|---------|
| `APP_HOSTNAME` | Overrides the hostname for generating URLs. | host header on the upload request | | `BASE_HOSTNAME` | Overrides the hostname for generating URLs. | host header on the upload request |
| `DISCORD_WEBHOOK` | Discord webhook url that newly-uploaded URLs will be sent to to pre-load their embed, which theoretically makes them embed again faster. | `undefined` (disabled) | | `DISCORD_WEBHOOK` | Discord webhook url that newly-uploaded URLs will be sent to to pre-load their embed, which theoretically makes them embed again faster. | `undefined` (disabled) |
| `PORT` | TCP port to listen on | `8568` | | `PORT` | TCP port to listen on | `8568` |
| `ADDRESS` | Address to bind to | `'0.0.0.0'` (all) | | `ADDRESS` | Address to bind to | `'0.0.0.0'` (all) |
| `FILES_DIR` | Directory to store the files in | `'files'` (relative of working directory) | | `FILES_DIR` | Directory to store the files in | `'files'` (relative of working directory) |
| `TRUST_PROXY` | Value for express's [`'trust proxy'`](https://expressjs.com/en/5x/api.html#trust.proxy.options.table) setting | `'127.0.0.1'` | | `TRUST_PROXY` | Value for express's [`'trust proxy'`](https://expressjs.com/en/5x/api.html#trust.proxy.options.table) setting | `'loopback'` |
Run with `node qonq.js` or your favorite init system. Run with `node qonq.js` or your favorite init system.
+2 -8
View File
@@ -11,7 +11,7 @@ var FILES_DIR = process.env.FILES_DIR || "files";
var app = express(); var app = express();
app.set("env", "production"); app.set("env", "production");
app.set('trust proxy', process.env.TRUST_PROXY || "127.0.0.1"); app.set('trust proxy', process.env.TRUST_PROXY || "loopback");
app.listen(process.env.PORT || 8568, process.env.ADDRESS); app.listen(process.env.PORT || 8568, process.env.ADDRESS);
app.use((req,res,next) => { res.header("Access-Control-Allow-Origin", '*'); next(); }); app.use((req,res,next) => { res.header("Access-Control-Allow-Origin", '*'); next(); });
@@ -46,7 +46,7 @@ app.post("*", (req, res, next) => {
var filepath = path.join(webroot, filename); var filepath = path.join(webroot, filename);
req.pipe(fs.createWriteStream(filepath)); req.pipe(fs.createWriteStream(filepath));
req.on("close", () => { req.on("close", () => {
var url = g?.next().value || `${req.protocol}://${filecode}.${process.env.APP_HOSTNAME || req.hostname}`; var url = g?.next().value || `${req.protocol}://${filecode}.${process.env.BASE_HOSTNAME || req.hostname}`;
res.type('text').send(url); res.type('text').send(url);
require("./discord-preloader.js")(url); require("./discord-preloader.js")(url);
}); });
@@ -77,9 +77,3 @@ app.get(['/', '/:code/', '/:code/*'], function(req, res, next){
} }
}); });
}, express.static(FILES_DIR), serveIndex(FILES_DIR, {icons: true})); }, express.static(FILES_DIR), serveIndex(FILES_DIR, {icons: true}));
app.use((req, res) => {
if (req.method == "GET") res.status(404).send("This resource does not exist.");
else res.sendStatus(405);
});