Я получаю 404 ошибки при обновлении с другими заголовками.Я никогда не работал с nginx раньше.Кто-нибудь может посоветовать, как исправить эту ошибку?Я пробую несколько решений, таких как добавление try_files $ uri /index.html;в локализацию / но это не работает.
Мой внешний интерфейс, серверная часть, база данных и прокси-сервер работают с докерами.
Это мой nginx default.conf
server {
listen 80;
server_name localhost;
client_max_body_size 10M;
location /api {
proxy_pass http://server:5000/api;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cache_bypass $http_upgrade;
}
location / {
root /source;
try_files $uri /index.html;
index index.html index.htm;
}
}
это мой docker-compose.yml.Нужен ли общий том для внешнего интерфейса, внутреннего интерфейса и nginx?
version: '3'
services:
client:
restart: always
build:
context: ./client
dockerfile: Dockerfile.Production
ports:
- '80:80'
links:
- server
depends_on:
- server
volumes:
- shared:/app
mongo:
image: mongo
container_name: mongo
environment:
- TZ=Asia/Singapore
ports:
- '27017:27017'
volumes:
- shared:/data/db
server:
restart: always
build:
context: ./server
dockerfile: Dockerfile.Production
environment:
- TZ=Asia/Singapore
ports:
- '5000:5000'
links:
- mongo
volumes:
- shared:/app
expose:
- 5000
nginx:
build: ./nginx
environment:
- TZ=Asia/Singapore
links:
- server
depends_on:
- server
- client
volumes:
- shared:/app
ports:
- 8080:80
volumes:
shared: