node.js — Обслуживание статических файлов nodejs в том же домене, что и переполнение стека

У меня есть веб-сайт, который работает на PHP, но также у меня есть приложение NodeJS, которое работает в том же домене.
Адрес NodeJs /nodejsВсе остальные запросы под PHP.

  • PHP проект находится в папке /home/php-project
  • Папка статических файлов PHP /home/php-project/public
  • NodeJS находится в — /home/nodejs-project,
  • Папка статических файлов NodeJS /home/nodejs-project/public

Можно ли обслуживать разные статические папки?

Вот мой код NodeJs

app.use(express.static(__dirname + '/public'));

В настоящее время все статические файлы поступают из статической папки php, и я не могу получить доступ к статическим файлам nodejs.

Вот конфиг nginx

server {
listen         80;
server_name    www.example.com example.com;
return         301 https://www.example.com$request_uri;
}

server {
listen 443 ssl;
server_name example.com;

#### Comodo SSL
ssl_certificate path/to;
ssl_certificate_key path/to;

return 301 https://www.example.com$request_uri;
}

server {

listen 443 ssl;
server_name   www.example.com;

#### Comodo SSL
ssl_certificate path/to;
ssl_certificate_key path/to;

root /home/php-project/public;
index index.php;


location / {
autoindex off;
try_files $uri $uri/ /index.php?$query_string;
}

location /node-js {
proxy_pass http://localhost:5555;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_buffering off;
root /home/node-js;
}


} #### End server setup

0

Решение

Попробуй это:

location / {
root /home/php-project/public;
try_files $uri $uri/ /index.php?$query_string @fallback;
}

location @fallback {
root /home/nodejs-project/public;
try_files $uri $uri/ =404;
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]