0
的nginx/1.12.2(使用ngrok)
我正在開發一個項目玩具拒絕從本地主機以外的任何地方訪問管理。它將在家中進行託管。
我沒有公共IP。所以,我會用ngrok。 這是轉發的IP這樣的服務:
http://bf3bf81c.ngrok.io -> localhost:80
現在,如果從世界任何地方在瀏覽器的地址欄中,用戶輸入http://bf3bf81c.ngrok.io,http請求將被引導到我的電腦並轉發到端口80
我想要做的就是禁止從本地機器以外的任何地方訪問管理員。
嗯,我失敗了。使用ngrok的所有請求就好像來自本地主機一樣。 所以,這是行不通的。
allow 127.0.0.1;
deny all;
那麼,我不能直接地址到本地主機:8000 /管理員。因爲在這種情況下不會使用靜態文件。
我發明的唯一方法是:
殺ngrok。所以,外面沒有人可以訪問該網站。
評論「拒絕」了。
在admin中工作。
取消註釋拒絕指令,啓動ngrok。
嗯,這有點笨拙。
你能給我一個更優雅的解決方案嗎?
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;
}
}