nginx/1.12.2Refuser l'accès à l'administrateur, excepté depuis localhost (en utilisant ngrok)
Je développe un projet de jouet. Et il sera hébergé à la maison.
Je n'ai pas d'adresse IP publique. Donc, je vais utiliser ngrok. Il est un service qui transmet les adresses IP comme ceci:
http://bf3bf81c.ngrok.io -> localhost:80
Maintenant, si partout dans le monde une des entrées utilisateur http://bf3bf81c.ngrok.io dans la barre d'adresse de leur navigateur, demande http seront adressées à mon ordinateur et transmis au port 80
Ce que je voudrais faire est d'interdire l'accès à l'administration de n'importe où sauf mon ordinateur local.
Eh bien, j'ai échoué. Avec ngrok toutes les demandes proviennent de localhost. Donc, cela ne fonctionnera pas.
allow 127.0.0.1;
deny all;
Eh bien, je ne peux pas directement adresser à localhost: 8000/admin. Parce que les fichiers statiques ne seront pas utilisés dans ce cas.
La seule façon que je l'ai inventé est:
Tuez ngrok. Donc, personne de l'extérieur ne peut accéder au site.
Commentaire "deny" out.
Travailler dans l'admin.
Décommentez la directive deny, démarrez ngrok.
Eh bien, c'est un peu maladroit.
Pourriez-vous me proposer une solution plus élégante?
nginx.conf
server {
listen 80;
location /admin/ {
deny all;
}
location/{
proxy_pass http://localhost:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}