我的目标是通过nginx将我的subdomain.domain.com代理到apache上的后端web.domain.domain.com。 proxy_pass在nginx中工作,那部分是好的
server {
listen 80;
server_name subdomain.domain.com;
location / {
proxy_pass http://web.domain.domain.com;
}}
通过这种方式,我通过subdomain.domain.com将web.domain.domain.com带到了世界 但我不知道每个人都可以访问它所以我知道nginx支持允许拒绝。当我添加allow externalip并拒绝所有代码时:
server {
listen 80;
server_name subdomain.domain.com;
location / {
allow xx.xx.xx.xx;
deny all;
proxy_pass http://web.domain.domain.com;
}}
它应该允许ip到达subdomain.domain.com并拒绝世界其他地方,但它不起作用它拒绝所有这就是它 我有很多帖子,但没有找到解决这个问题的方法 我使用的是nginx 1.6版本
答案 0 :(得分:0)
问题是我没有获得到达我的域的用户的真实IP,所以答案是我需要从我的HA代理发送真正的IP
set_real_ip_from 10.x.x.x;
real_ip_header X-Forwarded-For;
real_ip_recursive on;