Мне было интересно, не могли бы вы пояснить, почему добавление того, что я сделал, помогло решить мою проблему, поскольку, хотя моя проблема устранена, я не уверен, почему это работает, и раньше это не работало в настройке.
Старая установка:
У меня есть файлы, которые обслуживаются по следующему адресу: http://192.168.33.1:3000/bower_components/...
например, (http://192.168.33.1:3000/bower_components/animate.css/animate.css
)
У меня настроен обратный прокси-сервер nginx по адресу http://192.168.33.10:80/.
У меня есть следующий блок местоположения:
location /content {
proxy_pass http://192.168.33.1:3000/;
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;
proxy_max_temp_file_size 0;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
В этой настройке будет загружен следующий URL-адрес: http://192.168.33.10/content/app/index.css
но следующий URL-адрес даст мне 404, даже если прямой доступ к файлу загрузится нормально: http://192.168.33.10/content/bower_components/animate.css/animate.css
(или что-нибудь еще в папке Bower_components в этом отношении)
Исправление:
Немного поиграв, я обнаружил, что если добавить следующий блок местоположения, все будет работать:
location /content/bower_components {
proxy_pass http://192.168.33.1:3000/bower_components;
}
Я понимаю, почему этот дополнительный блок местоположения будет работать, но я не понимаю, почему первоначальный блок местоположения не включал правило добавления блока местоположения, которое я добавил.
Любые советы относительно того, что происходит?