Docker中配置Nginx服务器,并且禁止通过ip访问

在配置完docker容器后,开启nginx服务器,绑定域名可以正常访问

(映射到宿主服务器的80端口)

但有一个问题:当访问域名时可以正常访问

但是访问ip地址是nginx的欢迎页面

虽然更改了nginx.conf 配置绑定了server name

但是在 /etc/nginx/sites-enabled/default  文件中 nginx依旧将80端口默认值指向 /var/www/html 

所以当我们通过ip访问时,依然能看到nginx欢迎页,但是通过域名访问一切正常

解决方法:

     可以将default的默认监听端口换成其它 比如7070 ,但是docker容器只将80端口映射出去即可解决问题 

虽然无法通过ip地址访问我们的网站,但是当我们把默认监听端口换成7070之后,访问ip地址会默认访问 xxx.xxx.xxx.xxx:7070

由于我们没有将docker中的7070端口映射出来,所以会造成访问错误,在浏览器上报错

我们这时可以禁止用户访问ip地址,平且抛出403禁止访问

在nginx.conf中:

在http中添加一个server (注意是添加,原先绑域名的server不要动)

然后重启服务

访问ip地址:

猜你喜欢

转载自blog.csdn.net/wszsdsd/article/details/89291535