2017-02-18 27 views
0

Я пытаюсь проксировать местоположение с помощью Nginx. К сожалению the application is broken и иногда создаст URL-адрес, такой как https://domain.com/subdir//foo вместо https://domain.com/subdir/foo. (Обратите внимание на дополнительную косую черту.)Перепишите https: // domain/subdir // foo to https:/domain/subdir/foo

Я использую это местоположение в своем конфигурационном файле Nginx.

location /subdir/ { 
    proxy_pass 0.0.0.0:8081/subdir/; 
} 

Я пытался несколько различных переделок и местоположения, чтобы получить URL с doubleslash, чтобы указать на один без.

Любое понимание того, как это осуществить?

+0

Если кто-то натыкается на этот вопрос, я в конечном итоге просто переход на Nginx – RubberDuck

ответ

0

Переменная $uri содержит нормализованный URI с такими вещами, как //, замененный одним /.

Вы можете иметь успех:

location /subdir/ { 
    rewrite^$uri break; 
    proxy_pass http://0.0.0.0:8081; 
} 
+0

Спасибо, но не кости. – RubberDuck

+0

Хм. Он работает для меня, но мне нужно было добавить 'http: //' в 'proxy_pass', чтобы удалить предупреждение. –

+0

Это было из виду, когда я копировал вставку. Мне интересно, если это потому, что я прокси-сервер к subdir ... – RubberDuck