Skip to content

"Cannot GET /" error when moving executable to a separate directory #102

@rmrbytes

Description

@rmrbytes

I have a simple node js application using a combination of static html files and api paths. I find that after I generate the executable, it works in the current directory that contains the source code but does not work when moved to another directory.

The error I get on loading 'https://localhost:3000' from a different directory is: Cannot GET /

The following is the server.js

// server.js

// Import required modules
const express = require('express');
const path = require('path');

// Create an Express application
const app = express();

app.use(express.static('public'))

// api calls

app.get('/api/test', (req, res) => {
    res.send('test)
  });
})

// Start the server
const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`);
});

The following is: config.js

{
    "compilerOptions": {
      "target": "es2022",
      "lib": ["es2022"],
      "module": "commonjs",
      "esModuleInterop": true,
      "forceConsistentCasingInFileNames": true,
      "strict": true,
      "skipLibCheck": true
    }
 }

The following is: sea-config.json

{
    "main": "server-out.js",
    "output": "sea-prep.blob"
 }

And the following are the commands I used to create the server executable

1 Build using esbuild

npm run build

3 create blob

node --experimental-sea-config sea-config.json

4 create copy of exe

cp $(command -v node) server

5 inject experimental node

npx postject server NODE_SEA_BLOB sea-prep.blob --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2

When I run ./server from the created directory, it works. However, when I move the exe to a separate directory and run it, it gives the Cannot GET / error.

What am I doing wrong? Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions