开发者社区> 问答> 正文

nginx https 如何有效禁止ip访问

当前nginx配置如下:

server {
    listen 443 ssl http2;
    ssl on;
    ssl_certificate www.domain.com.crt;
    ssl_certificate_key www.domain.com.key;
    ssl_session_timeout 5m;
    ssl_prefer_server_ciphers on;
    server_name www.domain.com domain.com;
    root /home/public;
    index  index.html index.htm;
    
    if ($host !=  www.domain.com) {
        rewrite ^/(.*)$ $scheme://www.domain.com/$1 permanent;
    }
}
server {
    listen 80 default;
    server_name  www.domain.com  domain.com;
    rewrite ^/(.*) https:// www.domain.com/$1 permanent;
}

展开
收起
琴歌 2017-08-01 10:26:09 5716 0
3 条回答
写回答
取消 提交回答
  • Renginx https 如何有效禁止ip访问
    请问你是如何搞定的?

    我在网上找到的办法,对https的ip访问,443的default server本地生成证书和密匙,填上路径就行了
    但这个对一个ip一个网站可以

    我现在是一个ip两个网站,以上步骤会导致虽然https下ip不能访问了,但其中的第一个也不能用域名访问,另一个正常

    目前的办法就是弄个if,是ip就444,但这个不是很好
    2017-10-01 21:27:16
    赞同 展开评论 打赏
  • 世事漫随流水,算来一梦浮生。
    Renginx https 如何有效禁止ip访问
    没事,用其它方式解决了呢
    2017-08-01 12:51:31
    赞同 展开评论 打赏
  • 旺旺:nectar2。
    楼主您好,

    欢迎来到阿里云论坛。

    粗略地看的话,应该可以啊。

    现在的访问效果能达到您的预期吗?
    2017-08-01 12:27:40
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
CDN助力企业网站进入HTTPS时代 立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手 立即下载
CentOS Nginx PHP JAVA多语言镜像使用手册 立即下载