Как установить индекс nginx

Вот сервис http://example.com основанный на обслуживании порта 4000, я могу посетить http://example.com/index.html сейчас. Когда я посещаю http://example.comХочу побывать index.html тоже. Вот мои настройки nginx:

map $http_upgrade $connection_upgrade {
  default upgrade;
  ''      close;
}

server {
    listen   80;
    server_name example.com ;

    location / {
      root  /wwwroot/product/example.com/programs/web.broswer/app;
      index index.html;
      proxy_pass http://localhost:4000;         # 映射到本地端口
      #proxy_redirect off;
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

      # 配置支持websocket
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection $connection_upgrade;
    }
}

Теперь путь / не ресурсы index.html,

1 ответ

Решение

index директива не будет работать с proxy_pass место нахождения. Тем не менее, вы можете явно отобразить / в /index.html с точным местоположением соответствия, используя:

location = / { rewrite ^ /index.html; }

выполнить внутреннее перенаправление или:

location = / { return 301 /index.html; }

выполнить внешнее перенаправление.

Смотрите это и это для деталей.

Другие вопросы по тегам