У меня есть файл конфигурации nginx, который находится на сервере example.com и www.example.com.
server {
listen 80;
server_name example.com;
return 301 http://www.example.com$request_uri;
}
server {
listen 80;
server_name www.example.com;
auth_basic "example Login";
auth_basic_user_file /etc/nginx/.htpasswd;
root /projects/www/example;
index index.html;
location ~* \.(html|js|jpg|png|gif|css|perfumes|imgs|map|fonts|otf)$ {
index index.do index.html index.htm;
access_log off;
}
location /.protected {
access_log off;
auth_basic off;
}
location /health {
access_log off;
auth_basic off;
}
location / {
try_files $uri $uri/index.html;
}
location /hello {
proxy_pass http://localhost:8282;
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;
}
}
Я сейчас пытаюсь защитить этот домен, потому что мы готовим запуск. Но есть только ссылка, которая позволяет проходить запросы без пароля, если в ссылке есть «.protected».
Например,
www.example.com / .protected /Файл file1.txt должен быть разрешен без ввода пароля.
Он работает нормально, но проблема заключается в example.com/.protected/file1.txt (без 'www').
Если я наберу только доменное имя «example.com» (без «www»), оно автоматически перенаправляется на www.example.com в соответствии с настройкой, но «example.com/.protected/file1.txt» не делаетПереадресация на «www.example.com/.protected/file1.txt». Кажется, если у доменного имени есть несколько путей, доменное имя (без «www») не перенаправляет на «www.example.com»
У меня получается «curl: (6) Не удалось разрешить хост: '
Что-то не так с моим файлом конфигурации?