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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions