Static files of expressjs app perfectly working when I browse the site from my server ip:port, but when the app serves from nginx, static file gives 404 . Here is my nginx conf:
upstream project { server localhost:6546; } server { listen 80; server_name example.com; access_log /var/log/nginx/example.com_access.log; error_log /var/log/nginx/example.com_error.log; location / { proxy_pass http://project/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } location ~* \.(css|js|gif|jpe?g|png)$ { expires 168h; } and here is my expressjs code for static:
app.enable('trust proxy'); app.use(favicon(__dirname + '/public/favicon.ico')); app.use(express.static(__dirname + '/public')); app.set('view engine', 'ejs'); if (app.get('env') === 'production') { app.set('view cache', true); }