У меня работает nginx, и у меня также есть сервер экспресс-бэкэнда с интерфейсом реагированияУ меня проблема со статическими файлами из экспресс.Например, у меня есть несколько файлов вида руля с заголовком, который вызывает css / style.css и каталог js, который в настоящее время работает в Chrome, но не в IE, Edge или Safari.В этих браузерах консоль показывает 404, и стиль, конечно, не применяется.
Я вызываю style.css со страницы просмотра моего руля следующим образом:
<link rel="stylesheet" href="css/style.css">
Это должнобыть настроенным так, чтобы, если бы я посетил http://sitename.com/css/style.css, я увидел бы style.css из /var/www/sitename.com/html/node/public/css/style.css location.Который на самом деле работает в Chrome, но не в других браузерах.
У меня есть это утверждение в моем экспресс-приложении
app.use(express.static('public'));
У меня есть такая структура каталогов:
/var/www/sitename.com/html/node (node express app is running from here)
/var/www/sitename.com/html/node/public (public folder for static files from express)
-> css (folder)
-> js (folder)
мой nginx настроен следующим образом:
server {
listen 80;
server_name _;
root /var/www/sitename.com/html;
index index.php index.html;
server_name sitename.com www.sitename.com;
location /phpmyadmin {
try_files $uri $uri/ =404;
}
location / {
root /var/www/sitename.com/html/node/public/;
try_files $uri @backend;
}
location @backend {
proxy_pass http://localhost:42134;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
# set max upload size
client_max_body_size 2G;
fastcgi_buffers 64 4K;
access_log /var/log/nginx/http_access.log combined;
error_log /var/log/nginx/http_error.log;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~ \.php$
{
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~* \.(htaccess|htpasswd) {
deny all;
}
# set long EXPIRES header on static assets
location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
expires 30d;
access_log off;
}
}