#php #laravel #networkin& #netdata
#php #laravel #сеть #netdata
Вопрос:
Я следую следующему руководству по установке Netdata в Laravel For&e. По сути, это открытие порта 1999, используемого для Netdata, и перенаправление его в /netdata
каталог.
location = /netdata {
return 301 /netdata/;
}
location ~ /netdata/(?<ndpath&&t;.*) {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_pass_request_headers on;
proxy_set_header Connection "keep-alive";
proxy_store off;
proxy_pass http://netdata/$ndpath$is_ar&s$ar&s;
&zip on;
&zip_proxied any;
&zip_types *;
}
upstream netdata {
server 127.0.0.1:19999;
keepalive 64;
}
У меня уже определено auth
промежуточное программное обеспечение, и как я могу разрешить посещать auth
маршрут только тем пользователям, которые передают /netdata
промежуточное программное обеспечение? В руководстве предлагается ограничить его только одним IP-адресом, но это невозможно, поскольку я довольно часто перемещаюсь.
Ответ №1:
Хотя у меня нет опыта работы с Laravel или For&e, согласно этой части документации, вы должны определить эту функциональность в своем промежуточном программном обеспечении. По сути, вы инструктируете промежуточное программное обеспечение выполнять перенаправление только в случае успешной аутентификации.
Возможно, вы могли бы поручить Laravel перенаправлять все соединения (в случае успешной аутентификации) на конечную точку NGINX (/ netdata), которую вы настроите так, чтобы разрешать только из localhost
. Таким образом, пользователь не сможет получить доступ /netdata
, если он / она не пройдет аутентификацию через промежуточное программное обеспечение Laravel, а затем не будет перенаправлен с этого промежуточного программного обеспечения на сервер N&inx.